2

これについては以前にある程度投稿しましたが、数日読んだ後、WCF の理解が深まり、作業を開始する前に少しフィードバックを得たいと思います。

基本的に、サーバー/クライアント システムを開発する必要があります。「サーバー」アプリケーション (c# ネット コンソール アプリ) は、MySQL データベース、すべてのソフトウェア インストール パッケージ、およびローカルで必要なその他すべてを備えたマシン上で実行されます。「クライアント」アプリケーション (c# ネット コンソール アプリ) は残りのマシンで実行され、サーバー ソフトウェアへの直接接続を維持します。管理者は Web フロントエンドを使用して、ソフトウェア パッケージをクライアントにインストールしたり、新しいサービスを作成したりできます。

私たちはすべてのマシンを所有しており、とにかくそれらを構成する必要があるため、サーバー プッシュは問題ではありません。ファイアウォールやその他の NAT 設定について心配する必要はありません。動作に必要なポートを入力して開くだけでよいからです。

WCF について最初に混乱したのは、「WCF サービス」をサーバーに関連付けたことです。ただし、操作の大部分は実際には「WCF サービス」で実行されるため、これが私の論理です。

1)「クライアント」アプリケーションを実際に「WCFサービス」にして、公開された機能が実際に適切なマシンで実行されるようにします。

2)「サーバー」アプリケーションを実際に「WCFクライアント」にして、ここからすべての指示/コマンドを発行し、戻り値を使用してデータベースなどを更新します。

これは従うべき適切な方法でしょうか、それとも WCF Duplex (一見すると非常に紛らわしいように見えます) を調べる必要がありますか、それとも raw ソケットから始める必要がありますか?

4

2 に答える 2

1

私があなたがやろうとしていることから、あなたは正しいです。つまり、クライアントマシンでは実際にTCP / IP「サーバー」が実行されている必要があり、中央サーバーマシンではTcp/IP「クライアント」が実行されます。

このようにして、TCP / IPクライアント(サーバーマシンで実行されているアプリ)は、各クライアントマシンへの呼び出しを開始できます。

1つのアプリケーションがtcp/ipクライアントとサーバーの両方になる可能性があることにも注意してください。したがって、サーバーマシンで実行されているアプリは、管理者がブラウザーを使用して処理を行うために使用するtcp/ipサーバーでもある可能性があります。これは事実上、サービスがHTTPサービスであることを意味します。

于 2011-03-11T08:48:52.093 に答える
0

したがって、それはクライアント/サーバーのものではありません。これは、分散コンピューティングのハブアンドスポーク構成です。WCFは非常にうまく使用できると思います。複数のサーバーと、さまざまなサーバーから作業を実行してデータベースを更新するコーディネーター(これらすべてのサーバーのクライアント)があります。

したがって、WCFはあなたに最適です。WCFの利点は、通信部分の構成と処理が簡単なことです。ソケットの管理にそれほど苦労する必要はありません。

于 2011-03-11T08:47:47.440 に答える