Nginx负载均衡和反向代理
1:反向代理
? ? ? ? ?代理就是中介,那有反向代理就有正向代理,兩者的區別是什么嘞?
? ? ? ? ? 正向代理隱藏真實客戶端,服務端不知道實際發起請求的客戶端.,proxy和client同屬一個LAN,對server透明;
? ? ? ? ? 反向代理隱藏真實服務端,客戶端不知道實際提供服務的服務端,proxy和server同屬一個LAN,對client透明。?
? ?
? ??
? ? 基本配置項
? (1)proxy_pass
? ? ? ? ? ? ?將當前請求反向代理到URL參數指定的服務器上
? ? ? (2)proxy_method
? ? ? ? ? ? 表示轉發時的協議方法名
? ? ? ? ? ?proxy_method POST;? ? ? ?客戶端轉發來的GET請求在轉發時方法名會改為POST請求
? ? ? ?(3)proxy_redirect
? ? ? ? ? ?當上游服務器返回的響應是重定向或者刷新請求(HTTP響應碼是301或者302),可以重設HTTP頭部的location或refresh
? ? ? ? ? ?proxy_redirect? ??http://location:8000/two/??http://location:8000/noe/
? ? ? ? ?(4)proxy_next_upstream
? ? ? ? ? ?當上游服務器請求出現錯誤,繼續換一臺服務器轉發請求。? ? ?
error:在與服務器建立連接,向其傳遞請求或讀取響應標頭時發生錯誤;
timeout:在與服務器建立連接,向其傳遞請求或讀取響應頭時發生超時
invalid_header:服務器返回空響應或無效響應;
http_500:服務器返回了帶有代碼500的響應;
http_502:服務器返回具有代碼502的響應;
HTTP_503:服務器返回具有代碼503的響應;
http_504:服務器返回具有代碼504的響應;
http_403:服務器返回帶有代碼403的響應;
http_404:服務器返回具有代碼404的響應;
off:禁用將請求傳遞到下一個服務器。
? ? ? ? ?示例:
? ? ? ? ? ? ?#當其中一臺返回錯誤碼404,500...等錯誤時,可以分配到下一臺服務器程序繼續處理,提高平臺訪問成功率,多可運用于前臺程序負載,設置proxy_next_upstream
? ? ?? proxy_next_upstream http_500 | http_502 | http_503 | http_504 |http_404;
? ? ? ? ? ? #proxy_next_upstream off? ?關閉向下轉發請求
? ? ? ? ? ??
2:負載均衡
? ? ? ?負載均衡直接上代碼,用Http Proxy module配置一個反向代理服務器。
? ? ? 示例如下:
? ? ? 當server 192.168.1.2:80在30秒內斷連3次就進行連接備份服務器。
#upstream模塊#定義一個上游服務器的集群upstream backend {#在30秒內連接失敗次數超過3次server 192.168.1.2:80 max_fails=3 fail_timeout=30s;#備份服務器server 192.168.1.8:80 backup;server 192.168.1.9:80 backip weight=5;} #server模塊 server {listen 80;location / {proxy_pass http://backend;} }《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
總結
以上是生活随笔為你收集整理的Nginx负载均衡和反向代理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 特征值 与特征向量(机器学习算法原理与实
- 下一篇: ****** 三十五 ******、软设