IIS服務器管理學習 讓Windows Server 2008 + IIS 7+ ASP.NET 支持10萬併發請求

工欲善其事必先利其器html

首先給服務器配上強力的軟件,用於安全防禦和監控。sql

公司服務器用的阿里雲的ECS,已經有防禦和監控了,以後又選擇額外加了一個安全狗數據庫

爲了監控服務器上系統的各項運行指標,又買了聽雲平臺的聽雲Server服務。安全

 


 

1.隊列長度服務器

網站對應的應用程序池->高級設置->常規多線程

便可進入隊列的最大請求數。併發

2.最大工做進程數post

網站對應的應用程序池->高級設置->進程模型性能

默認是1,若是設置大於1,則是Web Garden,多個進程分擔壓力,網站處理併發請求的能力天然會提高。測試

不過要注意的是每個工做進程是獨立的應用程序,全局靜態變量不共享。而且進程過多會給服務器形成較大壓力,反而下降併發能力,因此須要權衡進程數的多少。

3.最大併發鏈接數

網站->高級設置->行爲->鏈接限制

 

4.IIS最大併發工做線程數

這個數字在IIS裏面是沒有界面進行設置的。這個數字跟操做系統相關,win7系統的IIS的值是10,VS2012自帶的IIS Express的值是80。

配置文件地址 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

 

 

讓Windows Server 2008 + IIS 7+ ASP.NET 支持10萬併發請求

具體內容可看這個 【深刻理解IIS的多線程工做機制】  

netstat -net 查看全部鏈接

壓力測試的時候要保證測試的響應時間曲線穩定住必定時間後,才認爲是當前被測試服務器的真實性能,由於剛開始測試的時候須要必定預熱時間,通常測試到必定時間以後曲線會穩定住,這時候再判斷當前的響應時間。

你想建設一個能承受500萬PV/天天的網站嗎?服務器每秒要處理多少個請求才能應對?

 

性能監控

打開性能監視器  cmd->perfmon.msc

計數器:Web Service -> Current Connection ,選擇Total或者想要監控的站點 添加便可 。這個監控的是即時IIS併發鏈接數

還有數據庫鏈接數,能夠經過下面的語句查看 

SELECT * FROM [Master].[dbo].[SYSPROCESSES] WHERE [DBID] 
IN (
   SELECT [DBID]
   FROM [Master].[dbo].[SYSDATABASES] 
   WHERE NAME='databaseName'
)

 

池碎片池碎片是許多 Web 應用程序中的一個常見問題,應用程序可能會建立大量在進程退出後纔會釋放的池。 這樣,將打開大量的鏈接,佔用許多內存,從而影響性能。

相關文章
相關標籤/搜索