原理
Workerの説明
WorkerはWorkermanの基本的なコンテナであり、特定のプロトコルを使用して複数のプロセスでポートをリッスンすることができます。これは、nginxが特定のポートをリッスンするのと似ています。各Workerプロセスは独立して動作し、Epoll(event拡張機能をインストールする必要があります)+ノンブロッキングIOを使用し、それぞれが数万のクライアント接続を処理し、これらの接続からのデータを処理します。安定性を保つために、メインプロセスは子プロセスを監視するだけであり、データの受信やビジネスロジックの実行は行いません。
クライアントとWorkerプロセスの関係
メインプロセスとWorker子プロセスの関係
特徴:
これらの図から、それぞれのWorkerが独自のクライアント接続を維持し、クライアントとサーバー間のリアルタイム通信を容易に実現できることがわかります。このモデルに基づいて、HTTPサーバー、RPCサーバー、リアルタイムにデータを送信する一部のスマートデバイス、サーバーからのデータプッシュ、ゲームサーバー、WeChatミニプログラムのバックエンドなど、さまざまな基本的な開発要件を簡単に実装することができます。