私は、AzureワーカーロールによってホストされているOWIN APIファームを持っています。この役割へのリクエストは適切にラウンドロビンされていないようです。WebRequestクライアントがWebファーム内の特定のサーバーに固執しないようにする方法を教えてください。
具体的には、要求がロール内のインスタンスに「スティック」してラウンドロビンされていないような、C#ベースのエージェントがかなりあります。私はこれがこれらのエージェントのクライアント側の問題だと思っています。私のエージェントは私の労働者の役割を毎分2回呼びますから、これは大きな問題です。
私のワーカーロール(これはGETメソッドです。同様のPOSTメソッドがあります)を呼び出すコードは次のとおりです。特定のインスタンスへの接続が固執しないようにするためにできることはありますか?
var client = WebRequest.Create(url);
client.Headers.Add("Authorization", string.Format("Bearer {0}", token.AccessToken));
client.Headers.Add("AccountId", accountId.ToString());
client.Timeout = 120000;
client.Method = "GET";
using (var response = client.GetResponse())
{
using (var stream = response.GetResponseStream())
{
if (stream == null) return default(T);
using (var reader = new StreamReader(stream))
{
var data = reader.ReadToEnd();
return JsonConvert.DeserializeObject<T>(data);
}
}
}
私は= を使用しています"HttpsEndpoint" protocol = "https" port = "443" certificate = "SSL" localPort = "443" /> –
Igorek