高併發之Nginx的限流

首先Nginx的版本號有要求,最低爲1.11.5nginx

若是低於這個版本,在Nginx的配置中web

upstream web_app {
        server       到達Ip1:端口 max_conns=10;
        server       到達Ip2:端口 max_conns=10;
    }tomcat

 server {
        listen       80;
        server_name  localhost;併發

        #charset koi8-r;app

        #access_log  logs/host.access.log  main;工具

        location / {
            proxy_pass http://web_app;
        }測試

這個max_conns用不了,Nginx會啓動不了。固然這個參數要根據你的限流跟真實狀況來配置,我這裏配10的意思就是說一次併發只有10個訪問request能進入,但並非說只能訪問10次,不一樣的時間段,不是併發則能夠永遠訪問。spa

我的測試方法:ab工具測試,具體方法以下日誌

  1. #ab運行須要依賴apr-util包,安裝命令爲:  
  2. yum install apr-util  
  3. #安裝依賴 yum-utils中的yumdownload 工具,若是沒有找到 yumdownload 命令能夠  
  4. yum install yum-utils  
  5. cd /opt  
  6. mkdir abtmp  
  7. cd abtmp  
  8. yum install yum-utils.noarch  
  9. yumdownloader httpd-tools*  
  10. rpm2cpio httpd-*.rpm | cpio -idmv  
  11. #操做完成後 將會產生一個 usr 目錄 ab文件就在這個usr 目錄中  
  12. #簡單使用說明  
  13. ./ab -c 100 -n 1000 http://nginx的ip/
  14. #-c 100 即:每次併發100個  
  15. #-n 1000 即: 共發送1000個請求,也就是說一共是10次併發,測試結果能夠查看Nginx的日誌以及被訪問的進程日誌(好比tomcat能夠查tomcat日誌)。
相關文章
相關標籤/搜索