Swoole은 클러스터를 어떻게 관리하나요?
Swoole WebSocket 서버 클러스터를 만드는 방법은 무엇입니까?
질문:
1. Swoole WebSocket 클러스터는 어떻게 자동 회전을 달성하고 안정성을 보장할 수 있습니까?
2. Swoole WebSocket 서버 클러스터에서 Server2의 클라이언트 B로 정보를 푸시할 수 있는 방법은 무엇입니까?
답변:
먼저 문제의 본질은 동일한 프로세스 공간(물론 다른 서버에 있음)에 있지 않고, 공유할 수 없기 때문에 직접 통신할 수 없다는 점을 이해해야 합니다. tcp 연결 또는 해당 tcp 연결을 직접 조작
이제 클러스터에 동일한 서비스를 가진 여러 시스템이 있는 경우(매일 하나의 작업 프로세스로): A 및 B
이제 클러스터에서 특정 연결(특정 고객)을 원합니다. A가 B의 특정 연결(특정 고객)과 통신하기 아이디어:
서버 M을 시작
A와 B의 시작 프로세스에서 M(각각 C1, C2라고 함)에 연결된 클라이언트를 엽니다.
A의 특정 연결(특정 고객) A 서버에 메시지를 보내면 A 서버는 해당 B 식별 사용자 데이터를 처리하여 C1에 전송한 다음 C1이 M에게 메시지를 보냅니다. server
그런 다음 M 서버는 연결된 모든 클라이언트에게 메시지를 보냅니다. (물론 C2의 해당 User ID를 수행하면 C2에 직접 메시지를 보냅니다.)
M이 C2에 메시지를 보내고 C2는 특정 클라이언트를 찾습니다. ID를 기준으로 B에 연결한 후 직접 메시지를 보냅니다
위 내용은 swoole이 클러스터를 관리하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!