我有一个APS.NET webapi,它接收请求,对另一个API执行请求,并将来自该API的HttpResponse返回给客户端(即代理)。它使用一堆CPU,(远远超过内部API事件,尽管它们处于相同的负载下)。
我使用ANT进行了一些分析,发现大部分时间似乎花在了冲洗响应流中,看起来很奇怪。
响应非常简单,内容只有一个double,但flush方法似乎占用了大约60%的cpu时间。
是否有人知道可能导致此CPU负载的原因或我可以采取哪些措施进行调查?
如果它有用,代码就是这样:
private static HttpClient _client = new HttpClient();
public async Task<HttpResponseMessage> Stuff()
{
return await _client.GetAsync("https://another.api/stuff");
}