私はマスター・プロセスは、このようにいくつかのスレーブ・プロセスとメッセージ交換に接続され、ネットワークアーキテクチャ作成する:すべてのスレーブが送信することができるはずZeroMQマスタースレーブ双方向通信
をメッセージをマスターに送信します。マスタは、接続されたスレーブのすべてのサブセットにメッセージを送信できる必要があります。
- マスターが1
- マスターにメッセージを送信するスレーブ1 2とスレーブ3
- マスターが
- すべてのスレーブにメッセージを送信するスレーブにメッセージを送信するスレーブにメッセージを送信すなわちマスター
これらのメッセージには回答がある可能性がありますが、専用の方法がない場合は、より高いレベルで処理できますZeroMQでこれを行うf。
これは1つのポートだけを使用して動作するはずです。
プレーンソケットでは、ポートでマスターバインドを行い、接続を受け入れ、すべてのスレーブが受信データを処理し、単一の接続を使用して単一のスレーブに接続するスレッドを生成できます。
このアーキテクチャはメッセージベースの通信を使用するので、私はZeroMQがそれを実装する適切なツールだと思っていますが、ドキュメントを閲覧する方法はありません。
私はこれをPythonで記述しますが、問題は言語に依存しないようにする必要があります。
いくつかの質問:すべてのスレーブは同じですか?奴隷は出入りしますか?複数のスレーブに送信する場合は、N個の特定のスレーブまたはN個のスレーブに送信しますか? – David
@David奴隷は来ないし、システムは本当に安定しているはずです。奴隷が生まれたら、永遠に生きていなければなりません。私はN *特定の*の奴隷に送ることができるようにしたい。 「同じ」を定義する –
「同じ」とは、同じバイナリ/スクリプトを複数回実行することを意味していましたが、これについてさらに考えても問題はありません。 – David