Nginx-安裝依賴及配置詳解

依賴javascript

  在安裝Nginx以前, 需確保系統已經安裝了gcc、 openssl-devel、 pcre-devel和zlib-devel軟件庫php

配置css

  Nginx的配置文件nginx.conf位於其安裝目錄的conf目錄下html

  Nginx.conf由多個塊組成, main section、events section、http section、sever section、location section、upstream section, 最外面的塊是main, main包含events和http, http包含upstream和多個server, server又包含多個location:前端

  main(全局設置)、server(主機設置)、upstream(負載均衡服務器設置)和 location(URL匹配特定位置的設置)java

    main塊設置的指令將影響其餘全部設置node

    server塊的指令主要用於指定主機和端口linux

    upstream指令主要用於負載均衡,設置一系列的後端服務器nginx

    location塊用於匹配網頁位置web

  這四者之間的關係式:server繼承main, location繼承server, upstream既不會繼承其餘設置也不會被繼承
  在這四個部分當中, 每一個部分都包含若干指令, 這些指令主要包含Nginx的主模塊指令、事件模塊指令、HTTP核心模塊指令, 同時每一個部分還可使用其餘HTTP模塊指令, 例如Http SSL模塊、HttpGzip Static模塊和Http Addition模塊等

  nginx是由模塊組成的,這些模塊在配置文件中又有指定的指令。指令被分紅簡單指令和塊指令。簡單指令包括名稱和用空格分割的參數以及用來結尾的分號(;)。一個塊指令和簡單指令有相同的結構,可是它使用大括號({and})來包圍一系列說明來替代使用分號做爲結尾。若是一個塊指令在大括號中有其餘的指令,則稱之爲上下文(如:events,http,server, 和location)。
  放在配置文件最外面的指令的稱之爲主文,event,http指令在主文中;server在http中,location在server中

  http: 通常狀況下,配置文件中包含多個server塊,它們之間以監聽的端口號和server name來區分。 一旦nginx決定了哪一個server處理請求,它測試在請求的對server塊內定義的位置指令的參數頭中指定的URI。

    server: 若是有多個匹配的location塊,nginx會選擇前綴最長的

server {
    location / {
        root /data/www;
    }
    location /images/ {
        root /data;
    }
}

    例如,響應 http://localhost/images/example.png 路由請求,nginx將會發送/data/images/example.png文件。

    不帶/images/的URIs請求將會映射到/data/www目錄。
    例如,爲了響應http://localhost/some/example.html請求,nginx將會發送/data/www/some/example.html文件

 

  main module: 主要控制子進程的所屬用戶/用戶組、派生子進程數、錯誤日誌位置/級別、pid位置、子進程優先級、進程對應cpu、進程可以打開的文件描述符數目等

#user是個主模塊指令, 指定Nginx Worker進程運行用戶以及用戶組, 默認由nobody帳號運行
user  nobody nobody;

#worker_processes是個主模塊指令, 指定了Nginx要開啓的進程數, 每一個Nginx進程平均耗費10M~12M內存, 建議指定和CPU的數量一致便可
worker_processes  8;

#
Nginx默認沒有開啓利用多核cpu,咱們能夠經過增長worker_cpu_affinity配置參數來充分利用多核cpu的性能。cpu是任務處理,計算最關鍵的資源,cpu核越多,性能就越好。cpu有多少個核,就有幾位數,1表明內核開啓,0表明內核關閉。worker_processes最多開啓8個,8個以上性能就不會再提高了,並且穩定性會變的更低,所以8個進程夠用了

#詳情參考下文中的進程數與CPU核數對應配置
worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000 01000000 10000000;

#error_log是個主模塊指令, 用來定義全局錯誤日誌文件, 日誌輸出級別有debug、info、notice、warn、error、crit可供選擇, 其中, debug輸出日誌最爲最詳細, 而crit輸出日誌最少
error_log  logs/error.log  notice;

#pid是個主模塊指令, 用來指定進程pid的存儲文件位置(kill -9 `cat /usr/local/nginx/logs/nginx.pid`)
pid        logs/nginx.pid;

#worker_rlimit_nofile用於綁定worker進程和CPU, Linux內核2.4以上可用
#這個指令是指當一個nginx進程打開的最多文件描述符數目, 理論值應該是最多打開文  件數(ulimit -n)與nginx進程數相除
#可是nginx分配請求並非那麼均勻, 因此最好與ulimit -n 的值保持一致
#如今在linux 2.6內核下開啓文件打開數爲65535, worker_rlimit_nofile就相應應該填寫65535
這是由於nginx調度時分配請求到進程並非那麼的均衡, 因此假如填寫10240, 總併發量達到3-4萬時就有進程可能超過10240了, 這時會返回502錯誤
worker_rlimit_nofile 65535;

  events module: 設定Nginx的工做模式(Nginx處理鏈接的方式)及鏈接數上限

events {
    #使用網絡的I/O模型
    #補充說明:
    #與apache類似, nginx針對不一樣的操做系統, 有不一樣的事件模型
    #A)標準事件模型
    #Select、poll屬於標準事件模型, 若是當前系統不存在更有效的方法, nginx會選擇select或poll, 使用網絡IO模型
    #B)高效事件模型
    #Kqueue: 使用於FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0 和 MacOS X.使用雙處理器的MacOS X系統使用kqueue可能會形成內核崩潰
    #Epoll: 使用於Linux內核2.6版本及之後的系統
    #/dev/poll: 使用於Solaris 7 11/99+, HP/UX 11.22+ (eventport), IRIX 6.5.15+ 和 Tru64 UNIX 5.1A+
    #Eventport: 使用於Solaris 10. 爲了防止出現內核崩潰的問題, 有必要安裝安全補丁
#Linux下效率最高的是epoll模型 use epoll; #每一個進程容許的最多鏈接數, 根據硬件調整, 和前面工做進程配合起來用, 儘可能大, 可是別把cpu跑到100%就行 #理論上每臺nginx服務器的 最大鏈接數
= worker_processes*worker_connections
#不少人會誤解worker_connections這個參數的意思,認爲這個值就是nginx所能創建鏈接的最大值。其實否則,這個值是表示每一個worker進程所能創建鏈接的最大值。
#因此,一個nginx能創建的最大鏈接數,應該是worker_connections * worker_processes。
#固然 ,這裏說的是最大鏈接數,對於HTTP請求本地資源來講,可以支持的最大併發數量是worker_connections * worker_processes。
#而若是是HTTP做爲反向代理來講,最大併發數量應該是worker_connections * worker_processes/2。由於做爲反向代理服務器,每一個併發會創建與客戶端的鏈接和與後端服務的鏈接,會佔用兩個鏈接。 #worker_connections 值的設置跟物理內存大小有關
#默認是1024, 考慮到keep-alive爲60秒, 每一個瀏覽器平均消耗兩個連接(chrom會同時打開多個鏈接提升加載速度)
#那麼平均每秒處理 1024 / 60 / 2 = 8.5, 一天能夠處理 8.5 * 86400 = 734400, 至關於天天有70萬IP。 #由於併發受IO約束, 最大鏈接數的值須小於系統能夠打開的最大文件數 #而系統能夠打開的最大文件數和內存大小成正比, 通常1GB內存的機器上能夠打開的文件數大約是10萬左右 #咱們來看看360M內存的VPS能夠打開的文件句柄數是多少: #$ cat
/proc/sys/fs/file-max #輸出 34336 #32000 < 34336, 即併發鏈接總數小於系統能夠打開的文件句柄總數, 這樣就在操做系統能夠承受的範圍以內 #因此, worker_connections 的值需根據 worker_processes 進程數目和系統能夠打開的最大文件總數進行適當地進行設置 #使得併發總數小於操做系統能夠打開的最大文件數目 #其實質也就是根據主機的物理CPU和內存進行配置 #固然, 理論上的併發總數可能會和實際有所誤差, 由於主機還有其餘的工做進程須要消耗系統資源 #ulimit -SHn 65535 #進程的最大鏈接數受Linux系統進程的最大打開文件數限制, 在執行操做系統命令`ulimit -n 65536`後worker_connections的設置才能生效
   worker_connections
204800; #長鏈接過時時間, 10~20比較合理 keepalive_timeout 60; #客戶端請求頭部的緩衝區大小, 這個能夠根據你的系統分頁大小來設置 #通常一個請求頭的大小不會超過1k, 不過因爲通常系統分頁都要大於1k, 因此這裏設置爲分頁大小 #分頁大小能夠用命令 ·getconf PAGESIZE· 取得 #但也有client_header_buffer_size超過4k的狀況, 可是client_header_buffer_size該值必須設置爲「系統分頁大小」的整倍數 client_header_buffer_size 4k; #這個將爲打開文件指定緩存, 默認是沒有啓用的, max指定緩存數量, 建議和打開文件數一致 #inactive是指通過多長時間文件沒被請求後刪除緩存 open_file_cache max=65535 inactive=60s; #這個是指多長時間檢查一次緩存的有效信息 open_file_cache_valid 80s; #open_file_cache指令中的inactive參數時間內文件的最少使用次數, 若是超過這個數字, 文件描述符一直是在緩存中打開的, 如上例, 若是有一個文件在inactive時間內一次沒被使用, 它將被移除 open_file_cache_min_uses 1; }

  http module: 配置http服務器相關屬性(能夠利用它的反向代理功能提供負載均衡支持, 以及正向代理的X牆)

http {
    #include是個主模塊指令, 實現對配置文件所包含的文件的設定, 能夠減小主配置文件的複雜度
    #相似於Apache中的include方法
    include mime.types;
    
    #屬於HTTP核心模塊指令, 這裏設定默認類型爲二進制流, 也就是當文件類型未定義時使用這種方式
    #例如在沒有配置PHP環境時, Nginx是不予解析的, 此時, 用瀏覽器訪問PHP文件就會出現下載窗口
    default_type application/octet-stream;
    
    #log_format是Nginx的HttpLog模塊指令, 用於指定Nginx日誌的輸出格式。main爲此日誌輸出格式的名稱, 能夠在下面的access_log指令中引用
    #$remote_addr與$http_x_forwarded_for用以記錄客戶端的ip地址;
    #$remote_user:用來記錄客戶端用戶名稱;
    #$time_local: 用來記錄訪問時間與時區;
    #$request: 用來記錄請求的url與http協議;
    #$status: 用來記錄請求狀態;成功是200, 
    #$body_bytes_s ent :記錄發送給客戶端文件主體內容大小;
    #$http_referer:用來記錄從那個頁面連接訪問過來的;
    #$http_user_agent:記錄客戶毒啊瀏覽器的相關信息;
    #一般web服務器放在反向代理的後面, 這樣就不能獲取到客戶的IP地址了, 經過$remote_add拿到的IP地址是反向代理服務器的iP地址
    #反向代理服務器在轉發請求的http頭信息中, 能夠增長x_forwarded_for信息, 用以記錄原有客戶端的IP地址和原來客戶端的請求的服務器地址
    log_format main '$host $status [$time_local] $remote_addr [$time_local] $request_uri '
        '"$http_referer" "$http_user_agent" "$http_x_forwarded_for" '
        '$bytes_sent $request_time $sent_http_x_cache_hit';
        log_format log404 '$status [$time_local] $remote_addr $host$request_uri $sent_http_location';
    
    #設置了log_format確定要設置日誌存放路徑
    access_log /usr/local/nginx/logs/access_log main; 
        
    #用來設置容許客戶端請求的最大的單個文件字節數
    client_max_body_size 20m;
    
    #用來指定客戶端請求中較大的消息頭的緩存最大數量和大小,  「4」爲個數, 「128K」爲大小, 最大緩存量爲4個128K
    large_client_header_buffers 32K;
    
    #用於開啓高效文件傳輸模式
    sendfile on;
    
    #將tcp_nopush和tcp_nodelay兩個指令設置爲on用於防止網絡阻塞
    tcp_nopush on;
    tcp_nodelay on;
    
    #設置客戶端鏈接保持活動的超時時間, 在超過這個時間以後, 服務器會關閉該鏈接
    keepalive_timeout 60;
    
    #指定響應客戶端的超時時間, 這個超時僅限於兩個鏈接活動之間的時間, 若是超過這個時間, 客戶端沒有任何活動, Nginx將會關閉鏈接
    send_timeout 10;
    
    #gzip用於設置開啓或者關閉gzip模塊, 「gzip on」表示開啓GZIP壓縮, 實時壓縮輸出數據流
    gzip  on;
    
    #gzip_min_length設置容許壓縮的頁面最小字節數, 頁面字節數從header頭的Content-Length中獲取
    #默認值是0, 即無論頁面多大都進行壓縮, 建議設置成大於1K的字節數, 小於1K可能會越壓越大
    gzip_min_length  1k;
    
    #gzip_buffers表示申請4個單位爲16K的內存做爲壓縮結果流緩存, 默認值是申請與原始數據大小相同的內存空間來存儲gzip壓縮結果
    gzip_buffers     4  16k;
    
    #gzip_http_version用於設置識別HTTP協議版本, 默認是1.1, 目前大部分瀏覽器已經支持GZIP解壓, 使用默認便可
    gzip_http_version  1.1;
    
    #gzip_comp_level用來指定GZIP壓縮比
    #1 壓縮比最小, 處理速度最快
    #9 壓縮比最大, 傳輸速度快, 但處理最慢, 也比較消耗cpu資源
    gzip_comp_level  2;
    
    #gzip_types用來指定壓縮的類型, 不管是否指定, 「text/html」類型老是會被壓縮的
    gzip_types  text/plain application/x-javascript text/css application/xml;
    
    #gzip_vary選項可讓前端的緩存服務器緩存通過GZIP壓縮的頁面, 例如用Squid緩存通過Nginx壓縮的數據
    gzip_vary  on;
    
    #保存服務器名字的hash表是由指令server_names_hash_max_size和server_names_hash_bucket_size所控制的
    #參數hash_bucket_size老是等於hash表的大小, 而且是一路處理器緩存大小的倍數
    #在減小了在內存中的存取次數後, 使在處理器中加速查找hash表鍵值成爲可能
    #若是hash_bucket_size等於一路處理器緩存的大小, 那麼在查找鍵的時候, 最壞的狀況下在內存中查找的次數爲2
    #第一次是肯定存儲單元的地址, 第二次是在存儲單元中查找鍵值
    #所以, 若是Nginx給出須要增大hash_max_size或hash_bucket_size的提示, 那麼首要的是增大前一個參數的大小.
    server_names_hash_bucket_size 128;
    
    #客戶端請求頭部的緩衝區大小, 這個能夠根據你的系統分頁大小來設置, 通常一個請求的頭部大小不會超過1k
    #不過因爲通常系統分頁都要大於1k, 因此這裏設置爲分頁大小, 分頁大小能夠用命令`getconf PAGESIZE`取得
    client_header_buffer_size 4k;
    
    #客戶請求頭緩衝大小, Nginx默認會用client_header_buffer_size這個buffer來讀取header值
    #若是header過大, 它會使用large_client_header_buffers來讀取
    #若是設置太小HTTP頭/Cookie過大 會報400 錯誤nginx 400 bad request求行
    #若是超過buffer, 就會報HTTP 414錯誤(URI Too Long)
    #nginx接受最長的HTTP頭部大小必須比其中一個buffer大, 不然就會報400的HTTP錯誤(Bad Request)
    large_client_header_buffers 8 128k;
    
    #使用字段:http, server, location 這個指令指定緩存是否啓用,若是啓用,將記錄文件如下信息:
    #打開的文件描述符,大小信息和修改時間. ·存在的目錄信息. ·在搜索文件過程當中的錯誤信息 --沒有這個文件,沒法正確讀取,參考open_file_cache_errors指令選項:
    #·max -指定緩存的最大數目,若是緩存溢出,最長使用過的文件(LRU)將被移除
    #例: open_file_cache max=1000 inactive=20s; open_file_cache_valid 30s; open_file_cache_min_uses 2; open_file_cache_errors on;
    open_file_cache max 102400

    #語法:open_file_cache_errors on | off 默認值:open_file_cache_errors off 使用字段:http, server, location 這個指令指定是否在搜索一個文件是記錄cache錯誤.
    open_file_cache_errors on;
    
    #語法:open_file_cache_min_uses number 默認值:open_file_cache_min_uses 1 使用字段:http, server, location #這個指令指定了在open_file_cache指令無效的參數中必定的時間範圍內可使用的最小文件數,若是使用更大的值,文件描述符在cache中老是打開狀態
    open_file_cache_min_uses on;
    
    #語法:open_file_cache_valid time 默認值:open_file_cache_valid 60 使用字段:http, server, location 這個指令指定了什麼時候須要檢查open_file_cache中緩存項目的有效信息.
    open_file_cache_valid on;
    
    #設定經過nginx上傳文件的大小
    client_max_body_size 300m;
    
    #設置客戶端請求頭讀取超時時間, 若是超過這個時間, 客戶端尚未發送任何數據
    #Nginx將返回「Request time out(408)」錯誤;
    client_header_timeout 10;
    
    #設置客戶端請求主體讀取超時時間, 若是超過這個時間, 客戶端尚未發送任何數據
    #Nginx將返回「Request time out(408)」錯誤, 默認值是60;
    client_body_timeout 10;
}

  server module: 虛擬主機配置, 建議將對虛擬主機進行配置的內容寫進另一個文件,而後在http module中經過include指令包含進來,這樣更便於維護和管理

server{
    #listen指定虛擬主機的服務監聽端口
    listen          80;
    
    #server_name用來指定IP地址或者域名, 多個域名之間用空格分開
    server_name    192.168.8.18  yilexun.com;
    
    #index用於設定訪問的默認首頁地址
    index index.html index.htm index.php;
    
    #root指令用於指定虛擬主機的網頁根目錄, 這個目錄能夠是相對路徑, 也能夠是絕對路徑
    root  /wwwroot/www.yilexun.com
    
    #charset用於設置網頁的默認編碼格式
    charset gb2312;
    
    #access_log用來指定此虛擬主機的訪問日誌存放路徑, 最後的main用於指定訪問日誌的輸出格式
    access_log  logs/access.log  main;
    
    location ...往下看location module....
}

  location module: URL地址匹配配置, URL地址匹配是進行Nginx配置中最靈活的部分, location支持正則表達式匹配, 也支持條件判斷匹配, 用戶能夠經過location指令實現Nginx對動、靜態網頁進行過濾處理, 使用location URL匹配配置還能夠實現反向代理, 用於實現PHP動態解析或者負載負載均衡

#默認請求
location / {
    #指定對應目錄 若是沒有指定root則往上級尋找
    root     /wwwroot/www.yilexun.com
    
    #定義首頁索引文件的名稱
    index index.php index.html index.htm;   
}

#定義錯誤提示頁面
#設置了虛擬主機的錯誤信息返回頁面, 經過error_page指令能夠定製各類錯誤信息的返回頁面
#在默認狀況下, Nginx會在主目錄的html目錄中查找指定的返回頁面
#特別須要注意的是, 這些錯誤信息的返回頁面大小必定要超過512K, 否者會被ie瀏覽器替換爲ie默認的錯誤頁面
error_page   404             /404.html;
error_page   500 502 503 504 /50x.html;
location = /50x.html {
    root    /wwwroot/www.yilexun.com/500
}

#圖片請求
#或者其餘JS等請求
#~ 波浪線表示執行一個正則匹配,區分大小寫
#~* 表示執行一個正則匹配,不區分大小寫
#^~ 表示普通字符匹配,若是該選項匹配,只匹配該選項,不匹配別的選項,通常用來匹配目錄
#= 進行普通字符精確匹配
#@ 定義一個命名的 location,使用在內部定 #location ~
^/(images|javascript|js|css|flash|media|static)/ { location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ { #指定對應目錄 若是沒有指定root則往上級尋找 root /wwwroot/www.yilexun.com/images; #過時30天, 靜態文件不怎麼更新, 過時能夠設大一點, 若是頻繁更新, 則能夠設置得小一點 expires 30d; } #PHP, 腳本請求所有轉發到FastCGI處理, 使用FastCGI默認配置 location ~ .php$ { #也就是將全部以.php爲後綴的文件都交給本機的9000端口處理, 也可使用unix的sock, 127.0.0.1:9000監聽設置可使用 php-cgi -b 127.0.0.1 或者在 php-fpm.conf 中的 listen 選項中設置 fastcgi_pass 127.0.0.1:9000; #設置默認的地址 fastcgi_index index.php; #定義$_SERVER['SCRIPT_FILENAME'] fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #包含fastcgi_params配置 include fastcgi_params; } #禁止訪問 .htxxx 文件 location ~ /.ht { deny all; }

  upstream module: 負載均衡配置模塊, Nginx的HTTP Upstream模塊, 這個模塊經過一個簡單的調度算法來實現客戶端IP到後端服務器的負載均衡, 在上面的設定中, 經過upstream指令指定了一個負載均衡器的名稱yilexun.com, 這個名稱能夠任意指定, 在後面須要的地方直接調用便可, 指定設置一羣服務器,服務器能夠指定不一樣的權重

upstream yilexun.com{
    #Nginx的負載均衡模塊目前支持4種調度算法, 下面進行分別介紹, 其中後兩項屬於第三方的調度方法
    #輪詢(默認): 每一個請求按時間順序逐一分配到不一樣的後端服務器, 若是後端某臺服務器宕機, 故障系統被自動剔除, 使用戶訪問不受影響
    #Weight: 指定輪詢權值, Weight值越大, 分配到的訪問機率越高, 主要用於後端每一個服務器性能不均的狀況下
    #ip_hash: 每一個請求按訪問IP的hash結果分配, 這樣來自同一個IP的訪客固定訪問一個後端服務器, 有效解決了動態網頁存在的session共享問題
    #fair: 比上面兩個更加智能的負載均衡算法, 此種算法能夠依據頁面大小和加載時間長短智能地進行負載均衡
    #也就是根據後端服務器的響應時間來分配請求, 響應時間短的優先分配, Nginx自己是不支持fair的, 若是須要使用這種調度算法, 必須下載Nginx的upstream_fair模塊
    #url_hash: 按訪問url的hash結果來分配請求, 使每一個url定向到同一個後端服務器, 能夠進一步提升後端緩存服務器的效率
    #Nginx自己是不支持url_hash的, 若是須要使用這種調度算法, 必須安裝Nginx的hash軟件包
    ip_hash;
    
    #能夠經過server指令指定後端服務器的IP地址和端口, 同時還能夠設定每一個後端服務器在負載均衡調度中的狀態
    #經常使用的狀態有:
    #down: 表示當前的server暫時不參與負載均衡
    #backup: 預留的備份機器, 當其餘全部的非backup機器出現故障或者忙的時候, 纔會請求backup機器, 所以這臺機器的壓力最輕
    #max_fails: 容許請求失敗的次數, 默認爲1, 當超過最大次數時, 返回proxy_next_upstream模塊定義的錯誤
    #fail_timeout: 在經歷了max_fails次失敗後, 暫停服務的時間, max_fails能夠和fail_timeout一塊兒使用
    #注意, 當負載調度算法爲ip_hash時, 後端服務器在負載均衡調度中的狀態不能是weight和backup
    server 192.168.8.11:80;
    server 192.168.8.12:80  down;
    server 192.168.8.13:8009  max_fails=3  fail_timeout=20s;
    server 192.168.8.146:8080;
}

 

進程與CPU配置實例:

一、2核CPU,開啓2個進程

worker_processes  2;  
worker_cpu_affinity 01 10;

二、2核CPU,開啓4進程

worker_processes 4;
worker_cpu_affinity 01 10 01 10;

三、2核CPU,開啓8進程

worker_processes  8;  
worker_cpu_affinity 01 10 01 10 01 10 01 10;

四、8核CPU,開啓2進程

worker_processes  2;  
worker_cpu_affinity 10101010 01010101;

說明:10101010表示開啓了第2,4,6,8內核,01010101表示開始了1,3,5,7內核 
經過apache 的ab測試查看nginx對CPU的使用情況:

top - 11:25:53 up 39 days,  1:25,  2 users,  load average: 0.33, 0.11, 0.09
Tasks: 133 total,   3 running, 130 sleeping,   0 stopped,   0 zombie
Cpu0  :  2.3%us,  0.9%sy,  0.0%ni, 82.7%id,  0.0%wa,  0.0%hi,  0.0%si, 14.1%st
Cpu1  :  1.7%us,  0.6%sy,  0.0%ni, 81.8%id,  0.0%wa,  0.0%hi,  0.0%si, 16.0%st
Cpu2  :  2.8%us,  1.9%sy,  0.0%ni, 74.4%id,  0.0%wa,  0.0%hi,  0.0%si, 20.9%st
Cpu3  :  2.0%us,  0.9%sy,  0.0%ni, 83.0%id,  0.0%wa,  0.0%hi,  0.0%si, 14.0%st
Cpu4  :  2.2%us,  0.8%sy,  0.0%ni, 79.3%id,  0.0%wa,  0.0%hi,  0.0%si, 17.6%st
Cpu5  :  3.6%us,  1.1%sy,  0.0%ni, 75.9%id,  0.0%wa,  0.0%hi,  0.0%si, 19.5%st
Cpu6  :  2.1%us,  0.9%sy,  0.0%ni, 87.2%id,  0.0%wa,  0.0%hi,  0.0%si,  9.8%st
Cpu7  :  1.7%us,  0.6%sy,  0.0%ni, 80.6%id,  0.0%wa,  0.0%hi,  0.0%si, 17.1%st
Mem:   1024884k total,   891020k used,   133864k free,   144912k buffers
Swap:   262140k total,     4172k used,   257968k free,   434244k cached

  全文參考:

    Nginx 反向代理、負載均衡、頁面緩存、URL重寫及讀寫分離詳解 http://freeloda.blog.51cto.com/2033581/1288553

    http://www.cszhi.com/20120513/nginx_nginx-conf.html

    http://wiki.nginx.org/NginxChs

    Nginx文檔翻譯 https://segmentfault.com/a/1190000006129358

相關文章
相關標籤/搜索