我有一个应用程序,客户端通过websockets连接到IIS。 IIS然后为IPC连接到可执行文件创建一个本地代理。IIS不能扩展,但cpu也不能最大化,为什么它减慢
所以IIS是一个中间人。
随着越来越多的连接进来,整个架构得到越慢。
因此,某处存在瓶颈。
有意思的是CPU没有通过25%的使用。我没有对CPU使用情况进行任何限制。
该问题不是代码作为一个函数,现在需要100毫秒,现在需要1000毫秒。而这些功能不受网络限制。 简单的图像转换。 我也检查,看看我是否锁在锁或任何东西。
用户加入系统越多,出现这些图像转换的次数越多,使用的CPU就越多。 但是CPU利用率再一次没有变化,它停留在25%左右
即使最简单的函数执行速度变慢了,我猜测应用程序池中可以使用多少CPU的限制。我再次检查了AppPool设置,没有限制。
有关如何去解决这个问题的任何建议?
让我想想,四核CPU这么25%是100%的一个核心 – Fredou 2013-04-10 23:52:55
@Fredou,可能是,但如果工作线程不是跨核心分布的话,那将会很奇怪。 – 2013-04-10 23:55:08
你是否已经把nic mon,磁盘和内存丢弃了?这些是在遇到像这样的IIS性能问题时要检查的其他关键组件。 – 2013-04-11 00:02:07