摘要:負載均衡,簡稱是一種服務器或網絡設備的集群技術。負載均衡將特定的業務網絡服務網絡流量等分擔給多個服務器或網絡設備,從而提高了業務處理能力,保證了業務的高可用性。
Nginx負載均衡(Load Balance,簡稱LB)是一種服務器或網絡設備的集群技術。負載均衡將特定的業務(網絡服務、網絡流量等)分擔給多個服務器或網絡設備,從而提高了業務處理能力,保證了業務的高可用性。
Nginx負載均衡示意圖:
Nginx負載均衡原理就是將所有客戶端的請求通過proxy_pass代理轉發到對應的一組后端服務器upstream server上。
Syntax:upstream name {...}Default:--
Context:http
后端服務器組upstream server
#server1 server { listen 8001; server_name localhost; access_log /var/logs/nginx/access.log main; location / { root /opt/app/code; index index.html index.htm index.php; } ... }
#server2 server { listen 8002; server_name localhost; access_log /var/logs/nginx/access.log main; location / { root /opt/app/code; index index.html index.htm index.php; } ... }
#server3 server { listen 8003; server_name localhost; access_log /var/logs/nginx/access.log main; location / { root /opt/app/code; index index.html index.htm index.php; } }
負載均衡服務器main server
#默認使用輪詢機制 upstream test { server 114.249.225.223:8001 down; server 114.249.225.223:8002 backup; server 114.249.225.223:8003 max_fails=1 fail_timeout=30s; // 允許失敗一次,超過30s則直接訪問8002 } #加權 upstream test { server 114.249.225.223:8001; server 114.249.225.223:8002; server 114.249.225.223:8003 weight=5; } #ip_hash upstream test { ip_hash; server 114.249.225.223:8001; server 114.249.225.223:8002; server 114.249.225.223:8003; } #url_hash upstream test { hash $request_uri; server 114.249.225.223:8001; server 114.249.225.223:8002; server 114.249.225.223:8003; } server { listen 80; server_name localhost www.mantis.me; access_log /var/logs/nginx/access.log main; location / { proxy_pass http://test; include proxy_params; } ... }
后端服務器在負載均衡調度中的狀態:
參數 | 說明 |
---|---|
down | 當前的server暫時不參與負載均衡 |
backup | 預留的備份服務器 |
max_fails | 允許請求失敗的次數 |
fail_timeout | 經過max_fails失敗后,服務暫停的時間 |
max_conns | 限制最大連接數 |
調度算法:
算法 | 說明 |
---|---|
輪詢(默認) | 按時間順序逐一分配到不同的后端服務器 |
加權輪詢 | weight越大,分配到的訪問幾率越高 |
ip_hash | 每個請求按訪問ip的hash結果分配,這樣來自同一個ip的請求將固定訪問到同一個后端服務器 |
url_hash | 按照訪問的url的hash結果來分配請求,是每個url定向到同一個后端服務器 |
least_conn | 最少連接數,哪個機器連接數少就分發到哪個機器 |
hash關鍵數值 | hash自定義的key |
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/40055.html
摘要:同樣可以用來作為緩存服務客戶端瀏覽器緩存我們稱之為客戶端緩存,后端使用等緩存服務我們稱之為后端緩存,同理作為緩存服務我們就稱之為代理緩存。缺點當文件很大時或者很小時,可能會導致文件描述符耗盡等情況。 Nginx同樣可以用來作為緩存服務;客戶端瀏覽器緩存我們稱之為客戶端緩存,后端使用Redis、Memcache等緩存服務我們稱之為后端緩存,同理Nginx作為緩存服務我們就稱之為代理緩存。...
摘要:客戶端服務配置實例只允許訪問服務器配置客戶端使用代理工具配置代理服務器,例如系統自帶擴展工具等,配置相應的代理服務器地址。在瀏覽器輸入即可訪問。 Nginx作為代理服務.正向代理:代理對象為客戶端.反向代理:代理對象為服務端. 反向代理 配置語法: Syntax:proxy_pass URLDefault:--Context:location、if in location、limit_...
摘要:用來作為靜態資源服務瀏覽器緩存跨域防盜鏈等。非服務器動態運行生成的文件。防盜鏈配置配置實例這里只允許頭為的地址和搜索過來的,可以便于優化 Nginx用來作為靜態資源web服務;CDN、瀏覽器緩存、跨域、防盜鏈等。 非服務器動態運行生成的文件。 類型 種類 瀏覽器端渲染 HTML、CSS、JS 圖片 JPG、GIF、JPEG、PNG 視頻 FLV、MPEG 文件 T...
摘要:前提好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲抱歉了。熟悉我的人都知道我寫博客的時間比較早,而且堅持的時間也比較久,一直到現在也是一直保持著更新狀態。 showImg(https://segmentfault.com/img/remote/1460000014076586?w=1920&h=1080); 前提 好幾周沒更新博客了,對不斷支持我博客的童鞋們說聲:抱歉了!。自己這段時...
摘要:關注回復,獲取原理鎖的解析以及使用場景關注回復,獲取高級知識塊關注回復,獲取的相關知識關注回復,獲取相關的知識輕輕關注,將推心的不錯經驗和知識 實踐篇 給定二維數組,根據某個字段排序 如何判斷上傳文件類型,如:僅允許 jpg 上傳 不使用臨時變量交換兩個變量的值 $a=1; $b=2; => $a=2; $b=1; strtoupper 在轉換中文時存在亂碼,你如何解決?php...
閱讀 2252·2021-11-16 11:44
閱讀 645·2019-08-30 15:55
閱讀 3278·2019-08-30 15:52
閱讀 3614·2019-08-30 15:43
閱讀 2201·2019-08-30 11:21
閱讀 440·2019-08-29 12:18
閱讀 1951·2019-08-26 18:15
閱讀 473·2019-08-26 10:32