1

リモートホストにインストールする必要があるサーバー側アプリケーションとWindowsサービスを作成しています.サービスはCPU使用率をサーバー側アプリケーションに返します-これは、サーバー側アプリケーションがリモートホストにサービスを展開する問題ではありません. -また、問題ではありません

問題: しかし、IP アドレスをハードコーディングしたくない場合、2 つの間のソケット接続をセットアップするにはどうすればよいですか? (スケーラビリティのため) - マルチキャストを使用する必要がありますか、またはこれを行うための不正な方法はありますか? ソケットを使用する以外の解決策はありますか? - Windows サービスの作成は初めてです。

IP アドレスをハードコーディングせずにサーバーとサービスの間で通信する方法を理解するのに助けが必要です。

前もって感謝します。

私の解決策: サーバー アプリケーションの IP とポートを含む xml ファイルを読み取る Windows サービスを作成しました。そのため、クライアント アプリケーションを展開するときに、ネットワーク情報を含む xml ファイルも作成します。よろしくアレックス

4

2 に答える 2

1

現在、多くの通信プラットフォームがネットワーク検出を使用しています。ネットワーク検出の使用について詳しく説明している codeproject に関する記事があります。

問題は、サーバーが実行されているマシン名がわからないことでした。実際、これを柔軟にし、ユーザーが選択できるようにしたかったのです。

http://www.codeproject.com/Articles/16113/Retreiving-a-list-of-network-computer-names-usingに関連しているようです

WCF の使用を考えたことはありますか?

http://msdn.microsoft.com/en-us/library/ms731082.aspx

マルチキャストに関しては、WCF サーバー マルチキャストにネットワーク上での可用性を通知させることができます。http://msdn.microsoft.com/en-us/library/dd456782.aspxを参照してください

于 2013-04-19T07:48:47.707 に答える
0

別の解決策として、引数 (エンドポイントの IP アドレス) を使用してサービスをコンソール アプリケーションとして作成し、引数を使用してリモート ホストに展開することができます。

于 2013-04-22T05:58:10.827 に答える