小心別讓日子把你給混了

          光榮在于平淡...艱巨在于漫長...
          posts - 26, comments - 7, trackbacks - 0, articles - 1
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          日歷

          <2009年6月>
          31123456
          78910111213
          14151617181920
          21222324252627
          2829301234
          567891011

          我參與的團隊

          文章檔案(1)

          我的地盤

          搜索

          •  

          最新評論

          學習Http系列_2:HTTP中的keep-alive

          Posted on 2009-06-14 12:23 60 閱讀(2603) 評論(0)  編輯  收藏 所屬分類: 網絡學習

          HTTP Keep-Alive
          Keep-Alive功能使客戶端到服務器端的連接持續有效,當出現對服務器的后繼請求時,Keep-Alive功能避免了建立或者重新建立連接。市場上的大部分Web服務器,包括iPlanet、IIS和Apache,都支持HTTP Keep-Alive。對于提供靜態內容的網站來說,這個功能通常很有用。但是,對于負擔較重的網站來說,這里存在另外一個問題:雖然為客戶保留打開的連接有一定的好處,但它同樣影響了性能,因為在處理暫停期間,本來可以釋放的資源仍舊被占用。當Web服務器和應用服務器在同一臺機器上運行時,Keep-Alive功能對資源利用的影響尤其突出。

          為什么有些apache服務器,負載很高,把Keep-Alive關掉負載就減輕了呢?
          apache 有兩種工作模式,prefork和worker。apache 1.x只有,prefork。
          prefork比較典型,就是個進程池,每次創建一批進程,還有apache是基于select實現的。在用戶不是太多的時候,長連接還是很有用的,可以節約分組,提升響應速度,但是一旦超出某個平衡點,由于為了保持很多長連接,創建了太多的進程,導致系統不堪重負,內存不夠了,開始換入換出,cpu也被很多進程吃光了,load上去了。這種情況下,對apache來說,每次請求重新建立連接要比保持這么多長連接和進程更劃算。

          --------------------------------------------------------

          KeepAliveTime 值控制 TCP/IP 嘗試驗證空閑連接是否完好的頻率。如果這段時間內沒有活動,則會發送保持活動信號。如果網絡工作正常,而且接收方是活動的,它就會響應。如果需要對丟失接收方敏感,換句話說,需要更快地發現丟失了接收方,請考慮減小這個值。如果長期不活動的空閑連接出現次數較多,而丟失接收方的情況出現較少,您可能會要提高該值以減少開銷。缺省情況下,如果空閑連接 7200000 毫秒(2 小時)內沒有活動,Windows 就發送保持活動的消息。通常,1800000 毫秒是首選值,從而一半的已關閉連接會在 30 分鐘內被檢測到。 KeepAliveInterval 值定義了如果未從接收方收到保持活動消息的響應,TCP/IP 重復發送保持活動信號的頻率。當連續發送保持活動信號、但未收到響應的次數超出 TcpMaxDataRetransmissions 的值時,會放棄該連接。如果期望較長的響應時間,您可能需要提高該值以減少開銷。如果需要減少花在驗證接收方是否已丟失上的時間,請考慮減小該值或 TcpMaxDataRetransmissions 值。缺省情況下,在未收到響應而重新發送保持活動的消息之前,Windows 會等待 1000 毫秒(1 秒)。 KeepAliveTime 根據你的需要設置就行,比如10分鐘,注意要轉換成MS。 XXX代表這個間隔值得大小。


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 杨浦区| 白河县| 锡林郭勒盟| 饶平县| 永善县| 潜山县| 德昌县| 句容市| 新宁县| 江孜县| 鹿泉市| 新宾| 宁德市| 柘城县| 平武县| 勐海县| 潮州市| 卢氏县| 河池市| 广丰县| 新乡县| 永泰县| 嘉义市| 龙里县| 武乡县| 红河县| 黑龙江省| 高清| 汕尾市| 泰和县| 西乡县| 谷城县| 景宁| 盘锦市| 军事| 惠安县| 上犹县| 金阳县| 曲松县| 迁西县| 东港市|