我有一个基于 Microsoft.Owin.SelfHost v3.1.0 的自托管 OWIN http 服务器遇到性能问题。只有几百个请求,但 CPU 达到 100%,服务器无法处理更多请求。
我所有的方法都是异步的,没有阻塞 I/O 操作。
令我惊讶的是,我的应用程序代码只占用不到 10% 的 CPU。大部分 CPU 时间都由框架消耗。
System.Net.ListenerAsyncResult.QueueBeginGetContext()
消耗 35%
OwinHttpListener.ProcessRequestAsync
消耗 23%
这对我来说似乎不正常,但我不知道问题出在哪里。
请问有人知道吗?