• <ul id="mayc0"></ul>
    <ul id="mayc0"><center id="mayc0"></center></ul>
    <strike id="mayc0"><input id="mayc0"></input></strike>
    <ul id="mayc0"></ul>
  • 始創于2000年 股票代碼:831685
    咨詢熱線:0371-60135900 注冊有禮 登錄
    • 掛牌上市企業
    • 60秒人工響應
    • 99.99%連通率
    • 7*24h人工
    • 故障100倍補償
    您的位置: 網站首頁 > 幫助中心>文章內容

    如何測試和調試Apache服務器

    發布時間:  2012/8/11 10:34:23
     Apache是運行在Linux操作系統上的頭號Web服務器。很多小地方都可以用來調整Apache的性能,并降低它對系統資源的影響。其中一個就是調整內存使用率,當然達到這一目的可能還是需要花點功夫的。

    例如,通過ps來確定httpd線程的內存使用率,可以輸入下面的命令:

    #ps-Uapache-uapacheu
    USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMAND
    apache130670.05.314970454504?SOct071:53/usr/sbin/httpd-f/etc/httpd/conf/httpd.conf-DAPACHE2
    ...

    上面這段輸出顯示了單個httpd進程使用了50MB的RSS(駐留集大小)內存(或者非交換物理內存),以及149MB的VSZ(虛擬)內存。這當然在很大程度上取決于你在Apache里加載和運行的模塊數量。這決不是一個固定的數字。由于這個數字里還包含了共享庫包,所以不是100%的準確。我們可以認為RSS數字的一半是httpd線程真正使用的內存數,這可能還有點保守,但是離我們的目的已經非常接近了。

    在本文里,我們假設每個httpd進程都在使用了27MB內存。然后,你需要確定可以讓httpd真正使用的內存數。根據運行在機器上的其他進程,你可能希望要求50%的物理內存都供Apache使用。在一個裝有1GB內存的系統上,就有512MB的內存可以被劃分為多個27MB的內存,也就是大約19個并發的httpd內存。有些人堅持認為每個httpd線程“真正”使用大約5MB的內存,所以從理論上講你可以把512MB的內存劃分出102個并發進程供Apache使用(要記住的是,除非你的網站需要極其巨大的流量,否則這種情況是非常罕見的)。

    在默認狀態下,Apache會分配最大256個并發客戶端連接,或者256個進程(每一個都對應一個請求)。按照這種設置,一個流量巨大的網站會在頃刻間崩潰(即使你假設每個進程占用5MB內存,那也需要1.3GB的內存來滿足請求的數量)。如果不采取其它措施,系統會通過硬盤來嘗試使用交換空間以處理它無法在物理內存中完成的任務。

    其他可以調整的項目包括KeepAlive、KeepAliveTimeout和MaxKeepAliveRequests等設置?梢苑旁趆ttpd.conf文件里的推薦設置有:

    ServerLimit128MaxClients128KeepAliveOnKeepAliveTimeout2MaxKeepAliveRequests100
    通過將KeepAliveTimeout從15秒減到2秒,可以增加MaxClients命令;19太小,而128要好得多。通過減少進程存活的秒數,你可以在相同的時間內允許更多的連接。

    當然,如果沒有真正的測試在背后支持,數字就是毫無意義的,這就是ab的作用之所在。使用ab對Apache配置文件(MaxClients等于256、ServerLimit等于256、KeepAliveTimeout等于15)進行調整,使其能夠滿足1000個請求(100個連續請求并發產生)的調整方法如下。(在執行測試的時候要確保服務器上有一個終端打開以觀察系統的負載。)

    $ab-n1000-c100-khttp://yoursite.com/index.php
    現在把上面的服務器設置改為更加保守的設置,重新啟動Apache,試著再次測試(總是從遠程計算機上進行,而不是本機)。

    在這里的測試中,不同的設置導致執行所消耗的時間產生了一倍的差距(分別為27.8s和16.8s),但是負載的平均值為0.03和0.30。這可能會使得你的網站變得稍慢,但是會確保它不會在高負載的情況下崩潰。還要記住的是,你將需要進行多次測試,以便取得一個平均值。

    使用ab是測試調整Apache配置的一個極佳方法,應該在你每次做出影響性能的更改時使用它。


    本文出自:億恩科技【www.vbseamall.com】

    服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經營性ICP/ISP證:贛B2-20080012
  • 服務器/云主機 24小時售后服務電話:0371-60135900
  • 虛擬主機/智能建站 24小時售后服務電話:0371-60135900
  • 專注服務器托管17年
    掃掃關注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權所有  地址:鄭州市高新區翠竹街1號總部企業基地億恩大廈  法律顧問:河南亞太人律師事務所郝建鋒、杜慧月律師   京公網安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時客服服務熱線