nginx 中文文件:
nginx在做反向**時,提供效能穩定,並且能夠提供配置靈活的**功能。nginx可以根據不同的正則匹配,採取不同的**策略,比如檔案結尾的走檔案伺服器,動態頁面走web伺服器,只要你正則寫的沒問題,又有相對應的伺服器解決方案,你就可以隨心所欲的玩。並且nginx對返回結果進行錯誤頁跳轉,異常判斷等。如果被分發的伺服器存在異常,他可以將請求重新**給另外一台伺服器,然後自動去除異常伺服器。
nginx 是通過配置檔案來做到各個功能的實現的。
nginx 整體 結構如下:
main(全域性設定):設定的指令將影響其他所有設定;
server(主機設定):指令主要用於指定主機和埠、
upstream(負載均衡伺服器設定):指令主要用於負載均衡,設定一系列的後端伺服器
location(url匹配特定位置的設定):用於匹配網頁位置。
這幾塊兒的配置關係:
server 繼承 main,location 繼承 server, upstream 既不會繼承其他的配置,也不會被繼承。
這 4 部分的配置都包含了若干的指令,包括nginx 主模組指令、事件指令、http 核心模組指令。
可以參見:
配置影響nginx全域性的指令。一般有執行nginx伺服器的使用者組,nginx程序pid存放路徑,日誌存放路徑,配置檔案引入,允許生成worker process數等。
user hhh hhh; # 主模組指令,指定 nginx worker 程序執行以及使用者組
worker_processes auto; # 指定 nginx 要開啟的程序數,建議與 cpu數量一致
worker_rlimit_nofile 65535; # 用來繫結 worker 程序和 cpu。
error_log /data/hhh/logs/error.log; # 全域性錯誤日誌檔案
pid var/run/tengine.pid; #指定程序 pid 的儲存檔案位置
說明:
現在在linux2.6 核心下開啟檔案開啟數為65535,worker_rlimit_nofile 就相應應該填寫65535.這是因為nginx排程時請求到程序並不是那麼均衡,所以假如填寫10240,總併發量達到3-4萬時就有程序超過10240了,這就會返回502。
events事件指令是設定nginx的工作模式及連線數上限。
events
http 模組可以巢狀多個server,配置**,快取,日誌定義等絕大多數功能和第三方模組的配置。
一般情況下,會使用 include 將第三方的配置檔案引入到主配置檔案中,減少主配置檔案的複雜度。
比如: include virtualhost/*.conf;
http
server 模組 配置虛擬主機的相關引數,乙個http中可以有多個server。
location模組 配置請求的路由,以及各種頁面的處理情況。
upstream 主要是配置負載均衡演算法。
########### 每個指令必須有分號結束。#################
#user administrator administrators; #配置使用者或者組,預設為nobody nobody。
#worker_processes 2; #允許生成的程序數,預設為1
#pid /nginx/pid/nginx.pid; #指定nginx程序執行檔案存放位址
error_log log/error.log debug; #制定日誌路徑,級別。這個設定可以放入全域性塊,http塊,server塊,級別以此為:debug|info|notice|warn|error|crit|alert|emerg
error_page 404 #錯誤頁
server }}
三、負載均衡
upstream這個配置的,作用是寫一組被**的伺服器位址,然後配置負載均衡的演算法。
nginx提供的負載均衡策略有2種:內建策略和擴充套件策略。內建策略為輪詢,加權輪詢,ip hash。擴充套件策略,就天馬行空,只有你想不到的沒有他做不到的啦,你可以參照所有的負載均衡演算法,給他一一找出來做下實現。
3.1 輪詢
輪詢:nginx預設就是輪詢其權重都預設為1,伺服器處理請求的順序:ababababab....
upstream mysvr
3.2 加權輪詢
跟據配置的權重的大小而分發給不同伺服器不同數量的請求。如果不設定,則預設為1。
下面伺服器的請求順序為:abbabbabbabbabb....
upstream mysvr
3.3 ip hash
nginx會讓相同的客戶端ip請求相同的伺服器。
3.4 熱備
當一台伺服器發生事故時,才啟用第二台伺服器提供服務。
upstream mysvr
4 tengine
engine是由**網發起的web伺服器專案。它在nginx的基礎上,針對大訪問量**的需求,新增了很多高階功能和特性。tengine的效能和穩定性已經在大型的**如**網,天貓**等得到了很好的檢驗。它的最終目標是打造乙個高效、穩定、安全、易用的web平台。
官網:
vuex各模組與步驟詳解以及使用
下面是官網提供的vuex的執行流程 vuex的特點 針對非非同步操作 components中可以不用store.dispatch,直接觸發action,再執行commit觸發mutation去改變state 針對非同步操作 components上store.dispatch乙個action,得到資料...
nginx的gzip模組詳解以及配置
1 gzip模組作用 gzip這個模組無論在測試環境還是生產環境都是必須要開啟,這個模組能高效的將頁面的內容,無論是html或者css js亦或是等都可以進行壓縮,節省了頻寬資源,也提高了 的載入速度,給瀏覽者帶來更優質的服務。2 啟用gzip 只要在nginx的配置檔案nginx.conf中去配置...
nginx各buffering的配置
一 接收客戶端client請求是的buffer配置 client header buffer size large client header buffers client body buffer size client max body size 二 反向 時的buffer配置 proxy buf...