GatewayWorker は Workerman によって開発されたプロジェクト フレームワークに基づいており、アプリ プッシュ サーバー、インスタント IM サーバー、ゲーム サーバー、モノのインターネット、スマート ホームなどの TCP 長時間接続アプリケーションを迅速に開発するために使用されます。
Workerman は、TCP か UDP、長い接続か短い接続かに関係なく、ほぼすべてのネットワーク アプリケーションを開発できる純粋なソケット クラス ライブラリとみなすことができます。 Workerman は、合理化されたコード、強力な機能、柔軟な使用法を備えており、さまざまなネットワーク アプリケーションを迅速に開発できます。 (推奨学習: Workererman Tutorial )
#同時に、WorkermanはGateway Workerよりも低いレベルであり、開発者に特定のマルチプロセスプログラミングエクスペリエンスを持たせる必要があります。
ヒント
GatewayWorker が提供するすべてのインターフェイスは分散呼び出しをサポートしているため、ビジネス コードを変更する必要はなく、分散方式で直接デプロイできます。
GatewayWorker を配布する方法
GatewayWorker は、Register サービスを使用して分割されたクラスターを確立します。同じクラスターは同じ登録サービス IP とポート を使用します。つまり、Gateway と businessWorker の登録サービス アドレス ($gateway->registerAddress $businessworker->registerAddress) は同じ Register サービスを指します。
分散展開の主要な手順
1. クラスターには登録サービスとしてサーバーが 1 つだけ必要で、これはプロセスの実行時にゲートウェイと BusinessWorker の確立を調整するために使用されます。通信に接続するために、他のサーバーは start_register.php ファイルを削除するか、内部のコードをコメントアウトすることができます。
(Register サービス自体の通信量は非常に少なく、通常はプロセス起動時のみ通信するため、Register サービス自体がボトルネックになることはありません。Register サービスのサーバーが運用中に一時的にハングアップしたとしても、外部ネットワーク サービスには影響を与えません。影響があるため、通常、Register サービスは高可用性である必要はありません)
2. Gateway と businessWorker の登録サービス アドレス (registerAddress) を統一された Register サービス アドレスに設定します。これは、ステップ 1 で選択した登録サービスが配置されているサーバーです。ip とポート。
3. 現在のサーバーのイントラネット IP
と一致するように、ゲートウェイ起動スクリプト (通常は start_gateway.php) の lanIp を設定します。以上がワーカークラスタの開発方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。