IIS连接数、IIS并发连接数、IIS最大并发工作线程数、应用程序池的队列长度、应用程序池的......
IIS連接數(shù)
一般購買過虛擬主機(jī)的朋友都熟悉購買時(shí),會(huì)限制IIS連接數(shù),這邊先從普通不懂代碼用戶角度理解IIS連接數(shù)
顧名思義即為IIS服務(wù)器可以同時(shí)容納客戶請(qǐng)求的最高連接數(shù),準(zhǔn)確的說應(yīng)該叫“IIS限制連接數(shù)”
這邊客戶請(qǐng)求的連接內(nèi)容包括:
1、網(wǎng)站html請(qǐng)求,html中的圖片資源,html中的腳本資源,其他需要連接下載的資源等等,任何一個(gè)資源的請(qǐng)求即一次連接(雖然有的資源請(qǐng)求連接響應(yīng)很快)
2、如果網(wǎng)頁采用框架(框架內(nèi)部嵌套網(wǎng)頁請(qǐng)求),那么一個(gè)框架即一次連接
3、如果網(wǎng)頁彈出窗口(窗口內(nèi)部嵌套網(wǎng)頁請(qǐng)求),那么一個(gè)窗口一個(gè)連接
虛擬主機(jī)供應(yīng)商在IIS(6.2版本,以下所有截圖均此版本)中 ?“點(diǎn)擊網(wǎng)站”->“右擊切換到功能視圖”->“點(diǎn)擊界面右側(cè)的‘限制’鏈接”->“編輯網(wǎng)站限制”
限制連接數(shù)即為虛擬主機(jī)供應(yīng)公開的IIS連接數(shù)標(biāo)準(zhǔn),如果購買的IIS連接數(shù)為50,那么我們不得不考慮網(wǎng)站的內(nèi)容框架和訪問量
如果網(wǎng)站圖片夠多,彈窗窗口隨意(可能連時(shí)間選擇框、簡單條件篩選框也用彈出新窗口),加上不得已的打開新頁面瀏覽內(nèi)容,那么僅僅能容忍10個(gè)人同時(shí)操作也很正常,我不會(huì)把這個(gè)操作描述為很多網(wǎng)站說的“10同時(shí)在線”,這很容易讓人誤解,在用戶的一次請(qǐng)求(表面上可能是刷新一次網(wǎng)頁,實(shí)際上內(nèi)部請(qǐng)求不止一次,事實(shí)上很少只有一次)都完成得到服務(wù)器響應(yīng)完畢之后,連接全部會(huì)被釋放,當(dāng)然在你看到展示的頁面之前,內(nèi)部嵌套如果有請(qǐng)求圖片等連接請(qǐng)求,連接會(huì)早早的被釋放
事實(shí)上,很多企業(yè)門戶網(wǎng)站訪問量低的驚人,IIS連接數(shù)為50也是綽綽有余了
這邊給出更加詳細(xì)參考鏈接:http://www.west263.com/info/html/IDCzixun/zhujizuyong/20080221/1677.html
IIS并發(fā)連接數(shù)
“管理網(wǎng)站”->“高級(jí)設(shè)置”->"限制"->"最大并發(fā)連接數(shù)"
其實(shí),普通用戶常說的“IIS鏈接數(shù)”就是這邊的“最大并發(fā)連接數(shù)”,如果PC端有IIS的朋友,可以測(cè)試上面兩個(gè)圖片的設(shè)置,是相互影響的
這邊默認(rèn)最大并發(fā)連接數(shù)為:4294967295,這是一個(gè)很驚人的數(shù)字,難道這代表著網(wǎng)站能具有并發(fā)執(zhí)行連接數(shù)為4294967295的能力?
這邊我做幾個(gè)假設(shè):
1、很多虛擬主機(jī)供應(yīng)商所說的無并發(fā)連接數(shù)限制真的成立嗎?
2、每個(gè)連接的處理,IIS都會(huì)開啟一個(gè)線程去處理,假設(shè)這個(gè)處理方式成立,那么4294967295個(gè)并發(fā)連接請(qǐng)求來了是否IIS會(huì)立即啟動(dòng)4294967295個(gè)線程去處理?
對(duì)于1:很顯然不成立,最大并發(fā)連接數(shù)的設(shè)置絕對(duì)有上限
對(duì)于2:?這是很多朋友的誤區(qū),假設(shè)4294967295并發(fā)連接同時(shí)來了,IIS不會(huì)立即啟動(dòng)4294967295個(gè)線程去處理,因?yàn)檫@不現(xiàn)實(shí),對(duì)于處理連接,IIS是有“?最大并發(fā)工作線程數(shù)?”限制的,這是我下面要介紹的,我從一些資料上查閱到,?該數(shù)字跟操作系統(tǒng)相關(guān),win7?系統(tǒng)的IIS的值是10(或者其他不確定),VS2012自帶的IIS Express的值是80。對(duì)于w?indows?服務(wù)器版本的系統(tǒng)?的具體值不清楚,即4294967295個(gè)并發(fā)連接來了后,(這邊以win7下的10為例),iis第一時(shí)間只能啟動(dòng)10個(gè)工作線程去處理,那么其他42949672?85?必須排隊(duì),排隊(duì)對(duì)用戶的體驗(yàn)來說就是網(wǎng)頁正在加載,但是什么都不顯示,然后此時(shí)購買了據(jù)虛擬主機(jī)供應(yīng)商所說的無并發(fā)連接數(shù)限制的客戶就要開始狂暴了,為何購買了所謂的“無限并發(fā)連接數(shù)”,還是會(huì)一直在加載的情況,我只能說這就是IIS處理能力有限的問題了
當(dāng)然服務(wù)器沒有直接返回“?HTTP Error 503. The service is unavailable.”應(yīng)該也算是一些你花更多錢的安慰吧,因?yàn)槟阒毁徺I了IIS連接數(shù)為50的話,那么第50+1個(gè)連接請(qǐng)求操作得到的就直接是“HTTP Error 503. The service is unavailable.”了
另外,如果web服務(wù)器的硬件設(shè)備夠爽朗(牛逼),那么IIS的工作線程也會(huì)處理的更快,那么響應(yīng)的用戶等待的時(shí)間也會(huì)更短(前提是你的IIS連接數(shù)夠大哦,否則就直接503了哦)
總的來說,最大并發(fā)連接數(shù),影響了排隊(duì)的數(shù)量,
很多時(shí)候需要我們?cè)u(píng)估自己的網(wǎng)站的最大并發(fā)連接數(shù),然后來進(jìn)行設(shè)置最佳數(shù)量
這邊給出更加詳細(xì)參考鏈接:
http://www.th7.cn/system/win/201407/63593.shtml
http://blog.csdn.net/shigaofei1/article/details/8222048
IIS最大并發(fā)工作線程數(shù)
這個(gè)在上面有所涉及,簡單的說就是IIS在并發(fā)連接請(qǐng)求過來時(shí)的處理機(jī)制,它會(huì)更機(jī)智的以某個(gè)數(shù)量級(jí)為單位來分批處理,讓沒有處理連接請(qǐng)求排隊(duì)等待,用戶瀏覽器中對(duì)于排隊(duì)等待的響應(yīng)就是“正在加載”,這比頁面直接顯示“?HTTP Error 503. The service is unavailable.?”更加能讓人接受,但是切勿氣急敗壞的怒點(diǎn)刷新按鈕,因?yàn)辄c(diǎn)的越多,你的請(qǐng)求在排隊(duì)隊(duì)伍中越靠后。
當(dāng)然很多朋友會(huì)說,為什么我有時(shí)候第一次刷不出來,重新多刷一次內(nèi)容就出來了,
?
1、頁面腳本哪個(gè)地方下載或者處理出了問題,導(dǎo)致頁面顯示異常或者直接不顯示
2、你重新刷新的那個(gè)秒級(jí)別的操作,web服務(wù)器更快速的已經(jīng)處理好了其他隊(duì)列的請(qǐng)求或者他人放棄了對(duì)web服務(wù)器連接請(qǐng)求的操作
3、路由或者寬帶網(wǎng)絡(luò)運(yùn)營商問題(不穩(wěn)定)
4、瀏覽器或者本身電腦問題
我不知道“IIS最大并發(fā)工作線程數(shù)”有無地方可以設(shè)置,知道的朋友可以給我留言,謝謝
那么現(xiàn)在問題來了,最大并發(fā)連接數(shù),影響了排隊(duì)的數(shù)量,那么有沒有進(jìn)步影響排隊(duì)數(shù)量的設(shè)置? 有的:隊(duì)列長度
隊(duì)列長度
假設(shè)最大連接數(shù)設(shè)置為100,1000個(gè)并發(fā)連接請(qǐng)求過來了,首先900直接返回給客戶“HTTP Error 503. The service is unavailable.”
然后IIS先啟動(dòng)(假設(shè)最大并發(fā)工作線程數(shù)為10)10個(gè)線程處理請(qǐng)求,其他90個(gè)進(jìn)入排隊(duì)狀態(tài),如果此時(shí)如下操作:
找到網(wǎng)站的所屬應(yīng)用程序池,“右擊高級(jí)設(shè)置”->"常規(guī)"->"列隊(duì)長度",設(shè)置為20
那么實(shí)際情況又會(huì)變成什么樣子呢?只會(huì)有20個(gè)進(jìn)入排隊(duì)狀態(tài)了,70(90-20)個(gè)請(qǐng)求也會(huì)立刻返回“HTTP Error 503. The service is unavailable”
iis默認(rèn)隊(duì)列長度設(shè)置是1000,范圍在10-65535 之間
最大工作進(jìn)程數(shù)
IIS 6.0允許將應(yīng)用程序池配置成一個(gè)Web園(Web Garden)
找到網(wǎng)站的所屬應(yīng)用程序池,“右擊高級(jí)設(shè)置”->"進(jìn)程模型"->"最大工作進(jìn)程數(shù)",默認(rèn)1
如果這個(gè)值大于 1,那么當(dāng)有連接請(qǐng)求時(shí)會(huì)啟動(dòng)多個(gè)新的工作進(jìn)程實(shí)例,可啟動(dòng)的最多進(jìn)程數(shù)為您所指定的最大工作進(jìn)程數(shù),后續(xù)更多的請(qǐng)求將以循環(huán)的方式發(fā)送至工作進(jìn)程,這個(gè)每個(gè)工作進(jìn)程都能承擔(dān)負(fù)載一些連接請(qǐng)求,當(dāng)然是以消耗cpu等硬件做代價(jià),這是值得的,如果web服務(wù)器cpu使用率很低但是又需要更高效的處理并發(fā)連接請(qǐng)求,為何不這么做呢?
如果網(wǎng)站中用到了依賴進(jìn)程的Session和Cache等對(duì)象,則不能保存在服務(wù)器內(nèi)存中,存儲(chǔ)方式選用StateServer或者SQLServer會(huì)更好,另外多個(gè)工作進(jìn)程切換時(shí)會(huì)有上下文復(fù)制,這也是資源消耗更多地方
最大工作進(jìn)程數(shù)的設(shè)置方法:(拷貝)按照每工作進(jìn)程能承載30個(gè)并發(fā)的原則來確定應(yīng)用程序池的最大工作進(jìn)程數(shù)。同時(shí)要注意,每個(gè)工作進(jìn)程大約會(huì)占用200M左右的系統(tǒng)內(nèi)存,在設(shè)置最大工作進(jìn)程數(shù)的時(shí)候,要主要最大工作進(jìn)程數(shù)與200M的乘積不要超過系統(tǒng)最大可用內(nèi)存數(shù)。一般情況下,建議按照每次增加5個(gè)工作進(jìn)程數(shù)的方式對(duì)最大工作進(jìn)程數(shù)進(jìn)行調(diào)整,調(diào)整完后對(duì)網(wǎng)站觀察一段時(shí)間,如依然無法滿足要求,再繼續(xù)增加5個(gè)工作進(jìn)程數(shù)。
這邊給出更加詳細(xì)參考鏈接:
http://www.itmano.com/87.html
http://www.xuebuyuan.com/174816.html
總結(jié)
以上是生活随笔為你收集整理的IIS连接数、IIS并发连接数、IIS最大并发工作线程数、应用程序池的队列长度、应用程序池的......的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 盘锦市(说一说盘锦市的简介)
- 下一篇: 一个http请求就是一个线程吗,java