>PHP 프레임워크 >Workerman >작업자 클러스터를 개발하는 방법

작업자 클러스터를 개발하는 방법

(*-*)浩
(*-*)浩원래의
2019-12-12 10:20:103520검색

GatewayWorker는 Workerman이 개발한 프로젝트 프레임워크를 기반으로 하며 앱 푸시 서버, 인스턴트 IM 서버, 게임 서버, 사물 인터넷, 스마트 홈 등과 같은 TCP 장기 연결 애플리케이션을 빠르게 개발하는 데 사용됩니다.

작업자 클러스터를 개발하는 방법

Workerman can watch TCP든 UDP든, 긴 연결이든 짧은 연결이든 거의 모든 네트워크 애플리케이션을 개발할 수 있는 순수 소켓 클래스 라이브러리입니다. Workerman은 간소화된 코드와 강력한 기능, 유연한 사용성을 갖추고 있으며, 다양한 네트워크 애플리케이션을 빠르게 개발할 수 있습니다. (추천 학습: Workerman 튜토리얼 )

동시에 Workerman은 GatewayWorker에 비해 하위권에 속하며 개발자에게는 특정 다중 프로세스 프로그래밍 경험이 필요합니다.

Tips

GatewayWorker에서 제공하는 모든 인터페이스는 분산 호출을 지원하므로 비즈니스 코드를 변경할 필요 없이 바로 분산 배포가 가능합니다.

GatewayWorker 배포 방법

GatewayWorker는 Register 서비스를 사용하여 분할된 클러스터를 설정합니다. 동일한 클러스터는 동일한 Register 서비스 IP 및 포트를 사용합니다. 즉, Gateway와 businessWorker의 등록 서비스 주소($gateway->registerAddress $businessworker->registerAddress)는 동일한 Register 서비스를 가리킵니다.

분산 배포를 위한 주요 단계

1. 클러스터에는 프로세스가 시작될 때 게이트웨이와 BusinessWorker 간의 연결 통신 설정을 조정하는 데 사용되는 등록 서비스로 서버 하나만 필요합니다. php 파일 또는 내부 코드를 주석 처리하세요.

(Register 서비스 자체는 통신량이 매우 적고 일반적으로 프로세스가 시작될 때만 통신하므로 Register 서비스 자체는 병목 현상이 발생하지 않습니다. Register 서비스 서버가 작동 중에 일시적으로 끊어지더라도 외부에 영향을 미치지 않습니다. 네트워크 서비스이므로 일반적으로 등록 서비스는 가용성이 높을 필요가 없습니다)

2. Gateway 및 businessWorker의 등록 서비스 주소(registerAddress)를 등록이 이루어지는 서버의 IP 및 포트인 통합 등록 서비스 주소로 설정합니다. 1단계에서 선택한 서비스가 위치합니다.

3. 게이트웨이 시작 스크립트(일반적으로 start_gateway.php)에서 lanIp를 현재 서버 인트라넷 IP와 일치하도록 설정하세요

위 내용은 작업자 클러스터를 개발하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.