我有一個應用程序,客戶端通過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