5

以下に示すように、新しいソフトウェアアプリケーションの実装を計画しています。

このアーキテクチャは目的に合っているように見えますか?

注意事項:

  • 多くのPCがあります
  • PCには、データベースにデータを定期的にアップロードする必要があるため、WCFクライアントがあります。
  • ターミナルサーバーのエンドユーザーがPCに情報を問い合わせることができる必要があるため、PCにはサーバーがあります。
  • ターミナルサーバーはユーザー向けのGUIであるため、ユーザーは特定のPCにリモート接続して、PCに情報を問い合わせることができます。
  • 以下のbasicHttpBindingを使用しています

他に何を検討しましたか?

  • WCF NetPeerTcpBinding(つまり、P2P)を試しましたが、要求と応答の操作はサポートされていません。

  • WCF Duplexを試しましたが、上記の「注意事項」セクションに記載されている要件により、いずれにせよ、両端にクライアントとサーバーが存在することになります。

ここに画像の説明を入力してください

4

1 に答える 1

2

申し訳ありませんが、基本的にあなたのアーキテクチャには同意しません。

  • WCFは、要求/応答通信以外の目的で設計または適合されていません。その全二重機能では、特定のクライアントがすでにサーバーへの接続を発行していない限り、サーバー側が特定のクライアントに通信を発行することはできません。つまり、すべてのクライアントと一流のオンライン全二重通信を実現するには、すべてのクライアントがサーバーへのオープンポートを維持する必要があります。

  • オンライン全二重を実現するためにPCごとにデュアルクライアントとサーバーを用意することは、クライアントごとにポートを開いたままにするという問題を解決するため、一歩前進ですが、特定のPCが開いていることを意味するため、セキュリティの面で欠点があります複数の接続要求を受信します。注意しないと、致命的な再入国で別の問題が発生する可能性があります。したがって、基本的には、アーキテクチャの保守性とソリューションへの適合性と引き換えに、「ポート」を節約することになります。

したがって、約200〜300台のPCの展開をターゲットにしている場合、アーキテクチャは保持されますが、数千台のPCの大規模な展開をターゲットにしている場合、それは保持されません。

于 2013-03-24T18:09:17.727 に答える