apache性能配置優化

        最近在進行apache性能優化設置。在修改apache配置文件以前須要備份原有的配置文件夾conf,這是網站架設的好習慣。如下的apache配置調優均是在red had的環境下進行的。
javascript

     httpd相關查看命令瞭解

  •  查看當前安裝模塊mpm(多路處理器)
        httpd -l
  •  查看httpd進程數(即各個mpm模式下Apache可以處理的併發請求數)
        ps -ef|grep httpd|wc -l

                獲得的結果數字就是表示能夠同時併發的進程數據,一個父進程,5個子進程。apache默認是開啓5個子進程php

  •   查看Apache的併發請求數及其TCP鏈接狀態:
        netstat -n | awk '/^tcp/ { S[$NF]} END {for(a in S) print a, S[a]}'

               返回結果示例:css

        LAST_ACK 5
        SYN_RECV 30
        ESTABLISHED 1597
        FIN_WAIT1 51
        FIN_WAIT2 504
        TIME_WAIT 1057   

         CLOSED:無鏈接是活動的或正在進行
         LISTEN:服務器在等待進入呼叫
         SYN_RECV:一個鏈接請求已經到達,等待確認
         SYN_SENT:應用已經開始,打開一個鏈接
         ESTABLISHED:正常數據傳輸狀態
         FIN_WAIT1:應用說它已經完成
         FIN_WAIT2:另外一邊已贊成釋放
         ITMED_WAIT:等待全部分組死掉
         CLOSING:兩邊同時嘗試關閉
         TIME_WAIT:另外一邊已初始化一個釋放
         LAST_ACK:等待全部分組死掉html

  • 查看請求80服務的client ip按照鏈接數排序。
       netstat -nat|grep ":80"|awk '{print $5}' |awk -F: '{print $1}' | sort| uniq -c|sort -n
  • 查看apache詳細連接狀況
       netstat -aptol
  • 檢測某一臺服務器的端口是否開啓狀態
       nc -v -w 10 -z 172.20.206.147 25801
  • 驗證apache2配置是否正確
       apachectl -t

    apache模塊啓用

  • 模塊介紹

                Apache 各個模塊功能 基本(B)模塊默認包含,必須明確禁用;擴展(E)/實驗(X)模塊默認不包含,必須明確啓用。
                模塊名稱 狀態 簡要描述
                mod_actions (B) 基於媒體類型或請求方法,爲執行CGI腳本而提供
                mod_alias (B) 提供從文件系統的不一樣部分到文檔樹的映射和URL重定向
                mod_asis (B) 發送本身包含HTTP頭內容的文件
                mod_auth_basic (B) 使用基本認證
                mod_authn_default (B) 在未正確配置認證模塊的狀況下簡單拒絕一切認證信息
                mod_authn_file (B) 使用純文本文件爲認證提供支持
                mod_authz_default (B) 在未正確配置受權支持模塊的狀況下簡單拒絕一切受權請求
                mod_authz_groupfile (B) 使用純文本文件爲組提供受權支持
                mod_authz_host (B) 供基於主機名、IP地址、請求特徵的訪問控制
                mod_authz_user (B) 基於每一個用戶提供受權支持
                mod_autoindex (B) 自動對目錄中的內容生成列表,相似於"ls"或"dir"命令
                mod_cgi (B) 在非線程型MPM(prefork)上提供對CGI腳本執行的支持
                mod_cgid (B) 在線程型MPM(worker)上用一個外部CGI守護進程執行CGI腳本
                mod_dir (B) 指定目錄索引文件以及爲目錄提供"尾斜槓"重定向
                mod_env (B) 容許Apache修改或清除傳送到CGI腳本和SSI頁面的環境變量
                mod_filter (B) 根據上下文實際狀況對輸出過濾器進行動態配置
                mod_imagemap (B) 處理服務器端圖像映射
                mod_include (B) 實現服務端包含文檔(SSI)處理
                mod_isapi (B) 僅限於在Windows平臺上實現ISAPI擴展
                mod_log_config (B) 容許記錄日誌和定製日誌文件格式
                mod_mime (B) 根據文件擴展名決定應答的行爲(處理器/過濾器)和內容(MIME類型/語言/字符集/編碼)
                mod_negotiation (B) 提供內容協商支持
                mod_nw_ssl (B) 僅限於在NetWare平臺上實現SSL加密支持
                mod_setenvif (B) 根據客戶端請求頭字段設置環境變量
                mod_status (B) 生成描述服務器狀態的Web頁面
                mod_userdir (B) 容許用戶從本身的主目錄中提供頁面(使用"/~username")
                mod_auth_digest (X) 使用MD5摘要認證(更安全,可是隻有最新的瀏覽器才支持)
                mod_authn_alias (E) 基於實際認證支持者建立擴展的認證支持者,併爲它起一個別名以便於引用
                mod_authn_anon (E) 提供匿名用戶認證支持
                mod_authn_dbd (E) 使用SQL數據庫爲認證提供支持
                mod_authn_dbm (E) 使用DBM數據庫爲認證提供支持
                mod_authnz_ldap (E) 容許使用一個LDAP目錄存儲用戶名和密碼數據庫來執行基本認證和受權
                mod_authz_dbm (E) 使用DBM數據庫文件爲組提供受權支持
                mod_authz_owner (E) 基於文件的全部者進行受權
                mod_cache (E) 基於URI鍵的內容動態緩衝(內存或磁盤)
                mod_cern_meta (E) 容許Apache使用CERN httpd元文件,從而能夠在發送文件時對頭進行修改
                mod_charset_lite (X) 容許對頁面進行字符集轉換
                mod_dav (E) 容許Apache提供DAV協議支持
                mod_dav_fs (E) 爲mod_dav訪問服務器上的文件系統提供支持
                mod_dav_lock (E) 爲mod_dav鎖定服務器上的文件提供支持
                mod_dbd (E) 管理SQL數據庫鏈接,爲須要數據庫功能的模塊提供支持
                mod_deflate (E) 壓縮發送給客戶端的內容
                mod_disk_cache (E) 基於磁盤的緩衝管理器
                mod_dumpio (E) 將全部I/O操做轉儲到錯誤日誌中
                mod_echo (X) 一個很簡單的協議演示模塊
                mod_example (X) 一個很簡單的Apache模塊API演示模塊
                mod_expires (E) 容許經過配置文件控制HTTP的"Expires:"和"Cache-Control:"頭內容
                mod_ext_filter (E) 使用外部程序做爲過濾器
                mod_file_cache (X) 提供文件描述符緩存支持,從而提升Apache性能
                mod_headers (E) 容許經過配置文件控制任意的HTTP請求和應答頭信息
                mod_ident (E) 實現RFC1413規定的ident查找
                mod_info (E) 生成Apache配置狀況的Web頁面
                mod_ldap (E) 爲其它LDAP模塊提供LDAP鏈接池和結果緩衝服務
                mod_log_forensic (E) 實現"對比日誌",即在請求被處理以前和處理完成以後進行兩次記錄
                mod_logio (E) 對每一個請求的輸入/輸出字節數以及HTTP頭進行日誌記錄
                mod_mem_cache (E) 基於內存的緩衝管理器
                mod_mime_magic (E) 經過讀取部分文件內容自動猜想文件的MIME類型
                mod_proxy (E) 提供HTTP/1.1的代理/網關功能支持
                mod_proxy_ajp (E) mod_proxy的擴展,提供Apache JServ Protocol支持
                mod_proxy_balancer (E) mod_proxy的擴展,提供負載平衡支持
                mod_proxy_connect (E) mod_proxy的擴展,提供對處理HTTP CONNECT方法的支持
                mod_proxy_ftp (E) mod_proxy的FTP支持模塊
                mod_proxy_http (E) mod_proxy的HTTP支持模塊
                mod_rewrite (E) 一個基於必定規則的實時重寫URL請求的引擎
                mod_so (E) 容許運行時加載DSO模塊
                mod_speling (E) 自動糾正URL中的拼寫錯誤
                mod_ssl (E) 使用安全套接字層(SSL)和傳輸層安全(TLS)協議實現高強度加密傳輸
                mod_suexec (E) 使用與調用web服務器的用戶不一樣的用戶身份來運行CGI和SSI程序
                mod_unique_id (E) 爲每一個請求生成惟一的標識以便跟蹤
                mod_usertrack (E) 使用Session跟蹤用戶(會發送不少Cookie),以記錄用戶的點擊流
                mod_version (E) 提供基於版本的配置段支持
                mod_vhost_alias (E) 提供大批量虛擬主機的動態配置支持
java

  • 性能調優,模塊啓用/關閉

           a)啓用壓縮jquery

       LoadModule deflate_module modules/mod_deflate.so

           b)啓用重寫linux

       LoadModule rewrite_module modules/mod_rewrite.so

           c)啓用默認擴展,支持在這裏進行修改httpd主要配置          web

       Include conf/extra/httpd-default.conf

           d)提供文件描述符緩存支持,從而提升Apache性能          算法

       LoadModule file_cache_module modules/mod_file_cache.so

           e)啓用基於URI鍵的內容動態緩衝(內存或磁盤)           數據庫

       LoadModule cache_module modules/mod_cache.so

           f)啓用基於磁盤的緩衝管理器            

       LoadModule cache_disk_module modules/mod_cache_disk.so

           g)基於內存的緩衝管理器           

       LoadModule socache_memcache_module modules/mod_socache_memcache.so

            h)屏蔽全部沒必要要的認證模塊

 

     #LoadModule authn_file_module modules/mod_authn_file.so
     #LoadModule authn_dbm_module modules/mod_authn_dbm.so
     #LoadModule authn_anon_module modules/mod_authn_anon.so
     #LoadModule authn_dbd_module modules/mod_authn_dbd.so
     #LoadModule authn_socache_module modules/mod_authn_socache.so
     #LoadModule authn_core_module modules/mod_authn_core.so
     #LoadModule authz_host_module modules/mod_authz_host.so
     #LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
     #LoadModule authz_user_module modules/mod_authz_user.so
     #LoadModule authz_dbm_module modules/mod_authz_dbm.so
     #LoadModule authz_owner_module modules/mod_authz_owner.so
     #LoadModule authz_dbd_module modules/mod_authz_dbd.so
     LoadModule authz_core_module modules/mod_authz_core.so
     LoadModule access_compat_module modules/mod_access_compat.so
     #LoadModule auth_basic_module modules/mod_auth_basic.so
     #LoadModule auth_form_module modules/mod_auth_form.so
     #LoadModule auth_digest_module modules/mod_auth_digest.so

 

           i)已通過時屏蔽           

       #LoadModule autoindex_module modules/mod_autoindex.so

           j)用於定義缺省文檔index.php、index.jsp等。          

       LoadModule dir_module modules/mod_dir.so

           k)用於定義記錄文件格式           

       LoadModule log_config_module modules/mod_log_config.so

           l)定義文件類型的關聯。          

       LoadModule mime_module modules/mod_mime.so

           m)減小10%左右的重複請求           

       LoadModule expires_module modules/mod_expires.so

           n)容許apache修改或清除傳遞到cgi或ssi頁面的環境變量          

       LoadModule env_module modules/mod_env.so

           o)根據客戶端請求頭字段設置環境變量,若是不須要則屏蔽掉        

       #LoadModule setenvif_module modules/mod_setenvif.so

           p)生成描述服務器狀態的頁面

       #LoadModule status_module modules/mod_status.so

           q)別名

       LoadModule alias_module modules/mod_alias.so

           r)url地址重寫模塊            

       LoadModule rewrite_module modules/mod_rewrite.so

           s)jk_mod 負載均衡調度模塊            

       LoadModule    jk_module modules/mod_jk.so

           t)過濾模塊,使用緩存必須啓用過濾模塊            

       LoadModule filter_module modules/mod_filter.so

           u)關閉服務器版本信息           

       LoadModule version_module modules/mod_version.so

           v)自動修正用戶輸入的url錯誤 

 

       LoadModule speling_module modules/mod_speling.so


      

 

    apache2擴展配置文件說明

  1. httpd-autoindex.conf       自動索引配置
  2. httpd-dav.conf                  WebDAV配置
  3. httpd-default.conf           Apache的默認配置
  4.  httpd-info.conf                mod_status, mod_info模塊配置
  5.  httpd-languages.conf    Apache多語言配置支持
  6.  httpd-manual.conf        在網站上提供Apache手冊
  7. httpd-mpm.conf              多路處理模塊配置文件
  8.  httpd-multilang-errordoc.conf 實現多語言的錯誤信息
  9. httpd-ssl.conf                 SSL配置
  10.  httpd-userdir.conf        配置用戶目錄
  11.  httpd-vhosts.conf        虛擬主機配置

     性能指標計算方法

        提供下面這個公式,以供你們在平時或者平常須要進行的性能測試中做爲一個參考。

  •    計算平均的併發用戶數:C = nL/T

        C是平均的併發用戶數;n是login session的數量;L是login session的平均長度;T指考察的時間段長度。

  •    併發用戶數峯值:C’ ≈ C+3根號C

         C’指併發用戶數的峯值,C就是公式(1)中獲得的平均的併發用戶數。該公式的得出是假設用戶的loginsession產生符合泊松分佈而估算獲得的。

      apache2自帶的壓力測試工具ab

  •    ab最經常使用的語法格式是這樣的:
        ab -n XXX -c YYY -k http://hostname.port/path/filename

         -n XXX:表示最多進行XXX次測試。也就是下載filename文件XXX次。
         -c YYY:客戶端併發鏈接個數。
         -k:啓用HTTP KeepAlive功能。默認不啓用KeepAlive功能。

  •     好比咱們要對http://hostname:port/file.com下載10000次進行測試,併發訪問爲60個,啓用HTTP KeepAlive功能,則訪問指令爲:
         ab -n 10000 -c 60 -k http://hostname:port/file.htm
  •     ab必須安裝在客戶端上,而且客戶端機器配置性能要高些。

     Java的壓力測試工具Jmeter       

         Jmeter 是apache開發的基於java的壓力測試工具。 

 

     apache多路處理器MPM

         目前apache2.4版本已經event MPM歸入正式版,再也不是實驗狀態。安裝時,apache已經自動將event MPM一塊兒安裝進去,經過apachectl -l能夠查看到event.c模塊。由此能夠看到,event MPM已經成爲apache默認的MPM工做模式

  • 啓用MPM

 

       Include conf/extra/httpd-mpm.conf

 

  • 配置evnet MPM參數

 

<IfModule event.c>
    #default 3
    ServerLimit           15
    
    #default 256 MaxRequestWorkers (2.3版本叫MaxClients) <= ServerLimit * ThreadsPerChild
    MaxRequestWorkers            960
    
    #default 3
    StartServers          3

    #default 64
    ThreadsPerChild       64
    
    #default 100000  ThreadLimit >= ThreadsPerChild
    ThreadLimit           64

    #default 75
    MinSpareThreads       32
    
    #default 400  MaxSpareThreads >= (MinSpareThreads + ThreadsPerChild)
    MaxSpareThreads      112

    #(2.3版本叫MaxRequestsPerChild)default 0, at 200 r/s, 20000 r results in a process lifetime of 2 minutes
    MaxConnectionsPerChild 10000
</IfModule>

        一、StartServers                    

              初始數量的服務器進程開始,默認爲3個
        二、MinSpareThreads          

              最小數量的工做線程,保存備用,默認是75個線程
        三、MaxSpareThreads         

              最大數量的工做線程,保存備用,默認是250線程
        四、ThreadsPerChild

              固定數量的工做線程在每一個服務器進程,默認是25個
        五、MaxRequestWorkers    

              最大數量的工做線程,默認是400
        六、MaxConnectionsPerChild

              最大鏈接數的一個服務器進程服務,默認爲0,沒有上限限制,可是爲了不內存異常,影響穩定性,須要設置一個數值進行限制

        在修改配置後,須要中止htppd,再啓動httpd,  不能經過apacherestart生效,而是先 apache stop 而後再 apache start才能夠生效。

         七、ServerLimit
               ServerLimit是活動子進程數量的硬限制,它必須大於或等於MaxClients除以ThreadsPerChild的值。

               serverLimit最大20000,默認是16。只有在你須要將MaxClients和ThreadsPerChild設置成須要超過默認值16個子進程的時候才須要使用這個指令。

               不要將該指令的值設置的比MaxClients 和ThreadsPerChild須要的子進程數量高。使用這個指令時要特別小心。

               若是將ServerLimit設置成一個高出實際須要許多的值,將會有過多的共享內存被分配。
               若是將ServerLimit和MaxClients設置成超過系統的處理能力,Apache可能沒法啓動,或者系統將變得不穩定。
               RedHat Enterprise Linux AS 3.0 Update 2最大MaxClients只能設置到256。
               若是你須要設置其爲更高,須要在MaxClients前面添加:ServerLimit xxx其中xxx不能少於MaxClients的數值。該設置方法適用於Apache 2.0系列。

          八、ThreadLimit
                ThreadLimit是全部服務線程總數的硬限制,它必須大於或等於ThreadsPerChild指令。使用這個指令時要特別小心。
                若是將ThreadLimit設置成一個高出ThreadsPerChild實際須要不少的值,將會有過多的共享內存被分配。
                若是將ThreadLimit和ThreadsPerChild設置成超過系統的處理能力,Apache可能沒法啓動,或者系統將變得不穩定。

                該指令的值應當和ThreadsPerChild可能達到的最大值保持一致。

 

  • 計算event的相關參數

             計算服務器進程的平均內存

 

       ps aux | grep 'httpd' | awk '{print $6/1024 " MB";}'

             計算正在通信傳輸過程當中的進程的平均內存,最好在一天以內不一樣的時間段內運行如下代碼

       ps aux | grep 'httpd' | awk '{print $6/1024;}' | awk '{avg += ($1 - avg) / NR;} END {print avg " MB";}'

             經過上面兩個指令計算出平均進程所使用的內存大小 ,再經過如下公式計算

           MaxRequestWorkers(MaxClients) (Total RAM - RAM used for Linux, MySQL, etc.) / Average httpd process size.

      一、StartServers 30% of MaxRequestWorkers

      二、MinSpareThreads 5% of MaxRequestWorkers

      三、MaxSpareThreads10% of MaxRequestWorkers

      四、ServerLimit == MaxRequestWorkers

      五、MaxConnectionsPerChild 10000 (as conservative alternative to address possible problem with memory leaky apps)

  • event MPM與worker MPM區別

             能夠支持比worker更高的併發數,主要安裝在類unix/linux上的工做模式。event mpm是worker mpm的變種,可是具備比worker MPM更好的併發性能。在event mpm模式下,ssl是不被支持的,他會被切換到worker mpm下處理。event mpm在apache2.4版本時才被從實驗狀態轉化成標準應用。

     apache 緩存設置

         apache涉及的緩存模塊有mod_cache、mod_disk_cache、mod_file_cache、mod_mem_cache。若是要使用緩存必須啓用這四個緩存模塊。
         同時修改緩存設置後,必須重啓apache,刷新緩存,不然用戶訪問頁面不是最新頁面。

  • mod_cache、mod_disk_cache、mod_mem_cache、mod_file_cache關係

             apache緩存分爲硬盤緩存和內存緩存
             mod_disk_cache mod_mem_cache 都依賴於mod_cache
             mod_file_cache是結合mod_cache使用,能夠用於指定幾個頻繁訪問,可是變化不大的文件

  •    配置硬盤緩存和內存緩存的緩存配置

 

    <IfModule mod_cache.c>
        CacheDefaultExpire 3600        #設置緩存過時時間,默認一小時
        CacheMaxExpire 86400        #設置緩存最大失效時間,默認最大一天
        CacheLastModifiedFactor 0.1
        CacheIgnoreHeaders Set-Cookie
        CacheIgnoreCacheControl Off
        
        <IfModule mod_disk_cache.c>
        CacheEnable disk /        #啓用緩存,並設定硬盤緩存目錄(url路徑)
        CacheRoot   /home/apache/cache    #設定apache訪問用戶的緩存路徑,須要進行受權配置,如linux設置爲777
        CacheDirLevels 5        #緩存目錄深度
        CacheDirLength 5        #緩存目錄名稱字符串長度
        CacheMaxFileSize 1048576    #緩存文件最大值
        CacheMinFileSize 10        #緩存文件最小值
        </IfModule>

        <IfModule mod_mem_cache.c>
        CacheEnable mem /        #緩存路徑
        MCacheMaxObjectCount 20000    #緩存對象最大個數
        MCacheMaxObjectSize 1048576    #單個緩存對象最大大小
        MCacheMinObjectSize 10        #單個緩存對象最小大小
        MCacheMaxStreamingBuffer 65536    #在緩衝區最多可以放置多少的將要被緩存對象的尺寸
        MCacheRemovalAlgorithm GDSF    #清除緩存所使用的算法,默認是 GDSF,還有一個是LRU
        MCacheSize 131072        #緩存數據最多能使用的內存
        </IfModule>
    </IfModule>

 

  •     文件緩存的應用

                 一、緩存文件

                       若是你的網站有幾個文件的訪問很是頻繁而又不常常變更,則能夠在 Apache 啓動的時候就把它們的內容緩存到內存中(固然要啓用內存緩存系統),使用的是 mod_file_cache 模塊,有多個文件能夠用空格格開,具體以下:

 

    <IfModule mod_file_cache.c>
      MMapFile /var/html/js/jquery.js
    </IfModule>

                  二、緩存句柄

 

    <IfModule mod_file_cache.c>
      CacheFile /usr/local/apache2/htdocs/index.html
    </IfModule>

 

    apache壓縮配置

  • apache經過mod_deflate模塊實現頁面壓縮,要想進行頁面壓縮必須啓用如下兩個模塊

 

    LoadModule deflate_module modules/mod_deflate.so
    LoadModule filter_module modules/mod_filter.so
  • 頁面壓縮模塊配置
    <ifmodule mod_deflate.c>
    #設定壓縮率,壓縮率1 -9, 6是建議值,不能過高,消耗過多的內存,影響服務器性能
    DeflateCompressionLevel 6

    AddOutputFilterByType DEFLATE text/plain
    AddOutputFilterByType DEFLATE text/html
    AddOutputFilterByType DEFLATE text/php
    AddOutputFilterByType DEFLATE text/xml
    AddOutputFilterByType DEFLATE text/css
    AddOutputFilterByType DEFLATE text/javascript
    AddOutputFilterByType DEFLATE application/xhtml+xml
    AddOutputFilterByType DEFLATE application/xml
    AddOutputFilterByType DEFLATE application/rss+xml
    AddOutputFilterByType DEFLATE application/atom_xml
    AddOutputFilterByType DEFLATE application/x-javascript
    AddOutputFilterByType DEFLATE application/x-httpd-php
    AddOutputFileByType DEFLATE application/x-httpd-fastphp
    AddOutputFileByType DEFLATE application/x-httpd-eruby
    AddOutputFilterByType DEFLATE image/svg+xml
    AddOutputFilterByType DEFLATE application/javascript

    #插入過濾器
    SetOutputFilter DEFLATE

    #排除不須要壓縮的文件
    SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip don’t-vary
    SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.avi$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.mov$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.mp3$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.mp4$ no-gzip dont-vary
    SetEnvIfNoCase Request_URI \.rm$ no-gzip dont-vary
    </ifmodule>

 

      keepAlive

          在HTTP 1.0中和Apache服務器的一次鏈接只能發出一次HTTP請求,而KeepAlive參數支持HTTP 1.1版本的一次鏈接,屢次傳輸功能,這樣就能夠在一次鏈接中發出多個HTTP請求。從而避免對於同一個客戶端須要打開不一樣的鏈接。不少請求經過同一個 TCP鏈接來發送,能夠節約網絡和系統資源。

  •    keepAlive啓用場景

                若是有較多的js,css,圖片訪問,則須要開啓長連接
                若是內存較少,大量的動態頁面請求,文件訪問,則關閉長連接,節省內存,提升apache訪問的穩定性
               若是內存充足,cpu較好,服務器性能優越,則是否開啓長連接對訪問性能都不會產生影響

  •   keepAlive配置

                在Apache的配置文件httpd.conf中,設置:

                一、Timeout  60 默認爲60s修改成30s

                二、KeepAlive on  設置爲on狀態

                四、KeepAliveTimeout 默認爲5s,若是值設置太高,因爲每一個進程都要保持必定時間對應該用戶,而沒法應付其餘用戶請求訪問,從而致使服務器性能降低。

                五、MaxKeepAliveRequests 100  若是設置爲0表示無限制,建議最好設置一個值

                      把MaxKeepAliveRequests設置的儘可能大,能夠在一次鏈接中進行更多的HTTP請求。但在咱們的測試中還發現,把 MaxKeepAliveRequests設置成1000,則評測的客戶端容易出現「Send requesttimed out」的錯誤,因此具體數值還要根據本身的情形來設置。

      問題集錦


          一、加載 LoadModule authz_core_module modules/mod_authz_core.so
                Invalid command 'Require', perhaps misspelled or defined by a module not included in the server configuration

          二、配置信息後面不能跟隨註釋,註釋必須另起一行
                CacheDefaultExpire takes one argument, The default time in seconds to cache a document

          三、關鍵字錯誤AddOutputFileByType應該是AddOutputFitlerByType
                 Invalid command 'AddOutputFileByType', perhaps misspelled or defined by a module not included in the server configuration

          四、啓用LoadModule setenvif_module modules/mod_setenvif.so
                 Invalid command 'SetEnvIfNoCase', perhaps misspelled or defined by a module not included in the server configuration

      參考資料

  1. http://www.cnblogs.com/fnng/archive/2012/11/20/2779977.html
  2. http://blog.csdn.net/lifetragedy/article/details/7707455
  3. http://blog.sina.com.cn/s/blog_499be8b80101gxg2.html
  4. http://wenku.baidu.com/view/a9dc8c6727d3240c8447efa9.html
  5. http://www.cnblogs.com/zhongbin/archive/2013/06/11/3131865.html
  6. http://my.oschina.net/fhd/blog/344689
  7. http://httpd.apache.org/docs/2.4/
  8. http://blog.chinaunix.net/uid-7374279-id-4470247.html
  9. awk 命令:http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html
  10. http://httpd.apache.org/docs/current/mod/mpm_common.html
  11. http://mirrorbrain.org/docs/tuning/
  12. https://jaswsinc.com/ubuntu-lamp-apache-mpm-event-fastcgi-php5-fpm/
  13. http://wiki.mikejung.biz/Apache?PageSpeed=noscript
  14. http://www.woktron.com/secure/knowledgebase/133/How-to-optimize-Apache-performance.html
  15. https://servercheck.in/blog/3-small-tweaks-make-apache-fly
  16. http://www.linuxidc.com/Linux/2012-07/65063.htm
相關文章
相關標籤/搜索