2012-04-28 4 views
0

私は、マシン上で実行されている複数のプロセス間で多対多の通信を効率的に処理する方法を探しています。複数のプロセス間通信(中央ハブなし)

私の要件はないだろう:

  • すべてのプロセス
  • すべてのプロセスが通知されたメッセージを送ることができなければなりません

    • ノー中央ハブ(ルートメッセージは例えば何の中央処理)をするとき(他のプロセスからの)新しいメッセージが利用可能です。

    名前付きパイプベースのソリューション(たとえば、ファイルシステムベースのソリューション)が好きです。

  • +0

    なぜセントラルハブの要件はありますか?あなたは正確に何をしようとしていますか?なぜあなたは名前付きパイプを好むのですか? – svick

    +0

    どちらもお客様のご要望です。中央ハブがない場合は、堅牢性が向上します。 – Andrea

    答えて

    2

    ピアツーピアバインディング(NetPeerTcpBinding)でWindows Communication Foundation(WCF)を使用できます。基本的に分散型のメッセージバスを作成することができます。これはTCPベースですが、同じコンピュータ上にある場合は非常に高速ですので、プロセス間通信に適しています(技術的に名前の付いたパイプではパフォーマンスが向上し、レイテンシは向上しますが、

    Peer-to-Peer Programming with WCF」を読んでください。

    +0

    お返事ありがとうございます!私はドキュメンテーションを見てきました。今では、自分のカスタムリゾルバを実装する必要があります(ノードをローカルマシン内で検索して、完全なネットワークディスカバリを高速化するため)。それのためのリソースがありますか? – Andrea

    +0

    @アンドレア:申し訳ありません。私はNetPeerTecpBindingをまだ使っていません。 –