我有一个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");
}