HttpClient
WebAPI 클라이언트 의 수명은 어떻게됩니까? 여러 통화에 대해
하나의 인스턴스를 갖는 것이 더 낫 HttpClient
습니까?
HttpClient
아래 예와 같이 요청 당 생성 및 처리의 오버 헤드는 무엇입니까 ( http://www.asp.net/web-api/overview/web-api-clients/calling-a-web-api-from- 에서 가져옴) a-net-client ) :
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://localhost:9000/");
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
// New code:
HttpResponseMessage response = await client.GetAsync("api/products/1");
if (response.IsSuccessStatusCode)
{
Product product = await response.Content.ReadAsAsync<Product>();
Console.WriteLine("{0}\t${1}\t{2}", product.Name, product.Price, product.Category);
}
}
Stopwatch
그러나 클래스를 사용하여 벤치마킹 할 수 있는지 확실하지 않습니다 . 내 예상은HttpClient
모든 인스턴스가 동일한 컨텍스트에서 사용된다고 가정하면 단일을 갖는 것이 더 합리적 이라고 생각합니다.