0

クラウド内の IP グループのいずれかと通信する C# アプリケーションを作成しました。いずれかが機能していない可能性があります。IIS サーバーは正しいアプリケーション インターフェイスにルーティングするためにホスト ヘッダー名を想定しているため、アドレスの URL を使用します。

そこで、URL が IP を指すように Hosts ファイルを設定します。次に、URL にコマンドを送信して、サーバー時間を取得します。
これは、接続が機能していることを示しています。

応答がない場合は、接続が切断されていると見なされます。次に、リストから新しい IP を Hosts ファイルに書き込み、再試行します。

ここでバグに遭遇しました。アプリケーションは、Hosts ファイルが変更されたことを認識していないようで、古い (不適切な) IP を使用しています。

アプリケーションにはキャッシュが組み込まれていないため、Windows がキャッシュしていると想定しています。

以下を使用してキャッシュをフラッシュしようとしました。

ipconfig /flushdns arp -d * nbtstat -R

私たちはまだ同じ問題を抱えています。キャッシュをクリアする方法について何か考えはありますか?

4

1 に答える 1

2

サーバー側(ロードバランサーなど)でこれに対処できない場合は、コードでIPアドレスリストを使用してください。

var req = HttpWebRequest.Create("http://" + IPAdd.ToString() + "/path_to_query_time");
((HttpWebRequest)req).Host = "yourhostheaderhere";
var resp = req.GetResponse();
//If things have gone wrong here, change IPAdd to the next IP address and start over.

ユーザー設定をいじって、自分で作成したアプリケーションの問題を解決しようとしないでください。

于 2011-02-18T13:45:35.353 に答える