小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

PHP的壓力測試工具ab.exe 和mpm介紹提高并發(fā)數(shù)

 昵稱21532077 2019-03-20

該工具是apache自帶的,可以用它來測試網(wǎng)站的并發(fā)量有多大和某個頁面的訪問時間。

基本用法:

1、  進(jìn)入CMD,轉(zhuǎn)到apache的bin目錄下。

2、  執(zhí)行命令ab.exe  -n 訪問的問次數(shù)–c 多少人訪問(并發(fā)量) 訪問的地址如:ab.exe –n 1000 –c 100 http://localhost/index.php;

如輸入以下命令ab.exe-n 10000 -c 100 http://localhost/test/index.php,

Index.php的內(nèi)容為

<?php

for($i=0;$i<100;$i++){

         echo$i.'|';

}

 

該命令的意思為100個人訪問該地址1W次。會出現(xiàn)以下結(jié)果。

 

  1. Server Software:        Apache/2.4.4                                   #apache版本號  
  2. Server Hostname:        localhost  
  3. Server Port:            80  
  4.    
  5. Document Path:          /test/index.php                       
  6. Document Length:        5 bytes  
  7.    
  8. ConcurrencyLevel:      100  
  9. Time taken fortests:   54.111 seconds                                 #訪問的總時間(秒)  
  10. Completerequests:      10000                                          #訪問的總次數(shù)  
  11. Failed requests:        0  
  12. Write errors:           0  
  13. Totaltransferred:      2060000 bytes  
  14. HTMLtransferred:       50000 bytes  
  15. Requests persecond:    184.80 [#/sec] (mean)                          #每秒訪問多少次  
  16. Time perrequest:       541.111 [ms] (mean)                            #這么多人(100)訪問一次的時間  
  17. Time perrequest:       5.411 [ms] (mean, acrossall concurrent requests)         #一個人訪問一次花費(fèi)的時間  
  18. Transfer rate:          37.18 [Kbytes/sec] received  


 

另外,如果我們把并發(fā)數(shù)增加到500,即把命令調(diào)整成ab.exe -n 10000 -c 500 http://localhost/test/index.php它就會出現(xiàn)以下結(jié)果。

 

  1. apr_socket_connect():由于目標(biāo)計算機(jī)積極拒絕,無法連接。   (730061)  
  2. Total of 902 requestscompleted  

原因是因為apache在windows下默認(rèn)的最大并發(fā)訪問量為150。我們可以設(shè)置conf\extra下的httpd-mpm.conf文件來修改它的最大并發(fā)數(shù)。在修改之前我們要說明一下,mpm是個什么東西

 

Mpm為多路處理模塊,即apache采用怎么樣的方式來處理并發(fā),主要有三種方式

1、  perfork 預(yù)處理進(jìn)程方式(用進(jìn)程服務(wù))

2、  worker 工作模式(用進(jìn)程下的線程服務(wù))

3、  winnt這個一般是windos 下采用的。(針對windows)

說完這個我們就可以動手修改配置文件了。步驟如下:

 

1、  打開httpd.conf配置文件,打開下面的配置

# Server-poolmanagement (MPM specific)

Include conf/extra/httpd-mpm.conf

2、  確定當(dāng)前 apache是mpm模式,CMD下進(jìn)放到apache的bin目錄輸入指令httpd.exe –l

會出現(xiàn)以下結(jié)果,就可知道它用的是什么模式

  1. Compiledin modules:  
  2.   core.c  
  3.   mod_win32.c  
  4.   mpm_winnt.c 這是為winnt模式  
  5.   http_core.c  
  6.   mod_so.c  


3、  修改httpd-mpm.conf文件,因為從上面可以看到,我的apache用的是winnt模式,所以在該文件下找到對應(yīng)的winnt_module模塊,修改參數(shù),原先為150,我們把它修改成1000

  1. <IfModulempm_winnt_module>  
  2.     ThreadsPerChild        1000  
  3.     MaxConnectionsPerChild   0  
  4. </IfModule>  


4、  重啟服務(wù)器

 

修改完之后我們重新運(yùn)行上面的命令ab.exe-n 10000 -c 500 http://localhost/test/index.php

它就會運(yùn)行成功了,出現(xiàn)與ab.exe -n10000 -c 100 http://localhost/test/index.php時類似的效果。

同理,如果是其它模式,則在httpd-mpm.conf中修改對應(yīng)的地方即可。如下

  1. <IfModule mpm_prefork_module>  
  2.    StartServers             5                  #開始啟動的進(jìn)程  
  3.    MinSpareServers          5                 #最小準(zhǔn)備進(jìn)程  
  4.    MaxSpareServers         10                #最大空閑進(jìn)程  
  5.    MaxRequestWorkers      1000            #最大并發(fā)數(shù)  
  6.    MaxConnectionsPerChild   0  
  7. </IfModule>  

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多