我每秒向某些HTTP服务器发送大约3K个HTTP请求,以使用我的服务所依赖的API。
通过调用BeginGetResponse()来异步发出请求。
99%的回复都是404,这是预期的,我的代码处理这些回复没有问题。我的CPU使用率保持很低(~5-10%)
然而,有时API端的服务器开始出现问题,我发出的每个请求都会返回503错误。这些处理方式与404的处理方式完全相同,但忽略了它们。
然而,对于503的CPU使用量是巨大的,它在503进入的整个时间内保持在约60%。结果是,当我与之交谈的API服务器时有问题,我的整个服务器也会崩溃。
与404相比,为什么来自HTTP服务器的503响应导致如此高的CPU使用率? 503是否重置连接池中的TCP连接?