.netcore-线程池饿死问题分析(CPU空闲,并发量大时请求超时)

如果您是使用.net或.net core平台编写服务时服务负载能力已经达到顶峰,而CPU并没有得到充分利用,看看这篇文章,那么或许你可以得到一些启发。

目录

  • 1、问题现象
  • 2、线程数不够
  • 3、什么是线程池
  • 4、什么是异步编程?
  • 5、通常是什么导致阻塞?
  • 6、我怎么知道ThreadPool缺少线程?
  • 6.1、PerfView / threadTime收集
  • 6.2、寻找增长的线程数。
  • 6.3、查找阻塞API
  • 6.4、主动出击
  • 6.5、 解决方法:在ThreadPool中强制使用更多线程
  • 7、小结

1、问题现象

有一个api网关,采用的是.net core 2.1开发,其并发量达到一定程度时再难以上升,此时分析瓶颈存在哪里,在之前已经有所

你可能感兴趣的:(.net,core,深度剖析)