非常に大きなプロジェクトでプロセス間通信に使用できる最も簡単で簡単な方法は何ですか?大規模プロジェクトでのプロセス間通信のための最も簡単で簡単な方法
私の要件は、通常のWindows FormsアプリケーションとWindowsサービスとの間で通信することです。
メンテナンスと実装が容易な方法が推奨されます。
ありがとうございました
非常に大きなプロジェクトでプロセス間通信に使用できる最も簡単で簡単な方法は何ですか?大規模プロジェクトでのプロセス間通信のための最も簡単で簡単な方法
私の要件は、通常のWindows FormsアプリケーションとWindowsサービスとの間で通信することです。
メンテナンスと実装が容易な方法が推奨されます。
ありがとうございました
タグからは、.NETについて話していることがわかりました。おそらくあなたはMicrosoft WCFを試してみるべきです。これは、特定のプロセス間(サービス間)通信技術を実際のコードから抽象化して、この問題を統合します。だから一般的には、あなたのプロセスがお互いに話すために使用するインターフェースを設計して記述し、XML設定ファイルに特定の通信技術を設定します。つまり、「プロセスは何を話すのか」と「この通信は具体的にどのように実装されているのか」という明確な区別があります。
WCFはSOAP、TCP \ IP通信、MSMQなどをサポートしています。プロセスはIISホストのWebサービス、通常のWindowsサービス、コンソールアプリケーションなどになります。私はこれがまさにあなたが探しているものだと思います。
実際には、多数の方法があるためプロジェクトによって異なります。
これは、プロジェクトのさまざまな部分がどこで実行されるかによって異なる場合があります(異なるサーバーや異なるテクノロジスタックで実行可能)。
おそらく最も一般的な方法はウェブサービスです。これらにはオーバーヘッドがありますが、DLL経由で簡単なインターフェイスAPIを検討する価値があります。
セキュリティとパフォーマンスを考慮し、今後どのように拡張または変更するかを考慮して、慎重に検討してください。
必ずしもそうではありません....最高または最も簡単な
.NETの世界ではMSMQやIBM MQメッセージ・キューミドルウェアを試してみてください。
通信がほとんど一方向の場合は、Visual Studioのコードジェネレータにほとんどの作業を任せることができれば、どちらも便利で簡単なWCFサービスの使用を検討してください。
WCFは、双方向(二重)通信もサポートしています.WSDualHttpBinding、netNamedPipeBinding、もちろんnetTcpBindingなどを参照して、いくつかのバインディングがサポートされています... http://msdn.microsoft.com/en/ -us/library/ms730879.aspx –
彼はまた簡単だと言った。 WCFは私が思うどんなMS製品にとっても最悪の結束とセットアップの悪夢を抱いています。サーバーがドメインの一部である場合に接続するための匿名サービスを取得しようとすると、システムレジストリを編集する必要があります。 ACK! –
まあ、私はあなたの特定のケースに精通していないので、私は主張することはできません...しかし、私が見たことから、WCFの設定はかなり直感的でよく文書化されています。通常、Microsoftの製品やフレームワークでは、シナリオがMicrosoftのシナリオの1つである場合、多くのサードパーティのソリューションとは異なり、すぐに使えるようになります。とにかく、私の意見のために試してみる価値がある。 –