全局屬性
worker_processes 1; worker進程數量,一般配置爲與cpu核數相同 默認爲1
events屬性
worker_connections 1024;服務器與⽤戶的⽹絡鏈接,⽐如worker_connections 1024,標識每一個workderprocess⽀持的最⼤鏈接數爲1024
http屬性
http屬性是配置最頻繁的部分,虛擬主機的配置,監聽端⼝的配置,請求轉發、反向代理、負載均衡等,後面配置時再詳細講解html
新增tomcat默認服務並啓動。配置以下反向代理,修改http屬性下server和location配置爲。多個配置能夠配置多個location使用9999端口統一代理nginx
server { listen 9999; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://127.0.0.1:8080; # root html; # index index.html index.htm; }
啓動的效果爲
面試
首先除了以前原有的配置一個端口爲8081且修改原tomcat默認頁面Home元素爲8081的tomcat並啓動小程序
負載均衡的配置須要在http的模塊下統一配置upstream屬性,輪詢負載均衡的配置tomcat
upstream roundServer { server 127.0.0.1:8080; server 127.0.0.1:8081; }
同時在須要配置的路由地址中配置upstream就能實現nginx的負載均衡,例如服務器
location /round { proxy_pass httP://roundServer/; }
隨後訪問http://119.45.52.68:9999/round 就發現8081和8080兩個tomcat的配置交替出現微信
默認每一個服務的權重是同樣的。所以輪詢便是一種正常的權重相同的負載均衡
下面將上述配置改成權重不一樣的配置session
upstream roundServer { server 127.0.0.1:8080 weight=3; server 127.0.0.1:8081 weight=1; }
從新訪問http://119.45.52.68:9999/round 能夠發現8080默認的頁面出現三次8081的頁面纔出現一次負載均衡
每一個請求按照ip的hash結果分配,每⼀個客戶端的請求會固定分配到同⼀個⽬標服務器處理,可
以解決session問題spa
upstream roundServer { in_hash; server 127.0.0.1:8080; server 127.0.0.1:8081; }
### Nginx的動靜分離 因爲Nginx很適合用來處理靜態資源,因此在實際使用中常常用來直接代理靜態資源 代理靜態資源配置 ``` location /statichtml/ { root staticData } ``` 此處代理的便是nginx安裝目錄下staticData/statichtml/下的靜態文件。一樣的也能夠代理盤符下其餘目錄的文件。路徑配置合理便可
歡迎搜索關注本人與朋友共同開發的微信面經小程序【大廠面試助手】和公衆號【微瞰技術】