原理

Workerの説明

WorkerはWorkermanの基本的なコンテナであり、特定のプロトコルを使用して複数のプロセスでポートをリッスンすることができます。これは、nginxが特定のポートをリッスンするのと似ています。各Workerプロセスは独立して動作し、Epoll(event拡張機能をインストールする必要があります)+ノンブロッキングIOを使用し、それぞれが数万のクライアント接続を処理し、これらの接続からのデータを処理します。安定性を保つために、メインプロセスは子プロセスを監視するだけであり、データの受信やビジネスロジックの実行は行いません。

クライアントとWorkerプロセスの関係

workerman master wokerモデル

メインプロセスとWorker子プロセスの関係

workerman master wokerモデル

特徴:

これらの図から、それぞれのWorkerが独自のクライアント接続を維持し、クライアントとサーバー間のリアルタイム通信を容易に実現できることがわかります。このモデルに基づいて、HTTPサーバー、RPCサーバー、リアルタイムにデータを送信する一部のスマートデバイス、サーバーからのデータプッシュ、ゲームサーバー、WeChatミニプログラムのバックエンドなど、さまざまな基本的な開発要件を簡単に実装することができます。