国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > Nginx > 正文

詳解Nginx 動態 DNS 反向代理的幾種寫法

2024-08-30 12:25:02
字體:
來源:轉載
供稿:網友

這篇文章的更新拖了半個月,真的是感動中國了。

Nginx 默認會緩存 DNS,大家都知道,如果做反向代理,其實是訪問的目標 ip,所以一旦緩存了目標 ip 就會非常麻煩。

茴字的四種寫法遠近聞名,萬萬沒想到,Nginx 動態 DNS 反向代理也有 N 種玩法,這主要取決于你用的 Nginx 版本,當然運維告訴我,最好是不要用動態 DNS,但是基于業務需要,咱們也沒有辦法。

茴字的第一種寫法:Nginx

在 Nginx 中通過設置變量可以曲線救國,當然有缺點,通過變量的方法沒有辦法進行負載均衡,非常麻煩,當然如果你只有單機(在實際業務場景中幾乎不存在),還是可以一試的:

server {  ...  resolver 127.0.0.1;  set $backend "http://dynamic.example.com:80";  proxy_pass $backend;  ...}

第二種寫法:Nginx Plus

當然 Nginx 不太好用,增強版的 Plus 就提供了一個更棒的寫法,它支持在 server 中寫入:

server {  ...  resolver 127.0.0.1 valid=30s;  proxy_pass http://upstream-sites;  ...}

第三種寫法:Tengine

Tengine 是淘寶家的魔改 Nginx,其實我挺煩的,因為最開始我不知道我們用的是 Tengine,導致配置沒有什么卵用,但是 Tengine 對于動態域名解析卻支持的非常不錯,官方文檔寫得也很清楚。

upstream backend {  dynamic_resolve fallback=stale fail_timeout=30s;  server a.com;  server b.com;}server {  ...  location / {    proxy_pass http://backend;  }}

其他

當然,還可以使用 Lua 腳本來實現,或者是別人的模塊,但是考慮到怕鼓搗壞,我還是不亂折騰了,所以沒有采取這種方案。

參考

ngx_http_upstream_dynamic_module - Tengine
Using DNS for Service Discovery with NGINX and NGINX Plus

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持錯新站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 秦皇岛市| 神池县| 珲春市| 华坪县| 石狮市| 凭祥市| 义马市| 鄂温| 沅江市| 讷河市| 泽州县| 芜湖县| 阳泉市| 正宁县| 河源市| 西峡县| 浑源县| 汤阴县| 河曲县| 龙泉市| 拉萨市| 定州市| 湖口县| 讷河市| 绥滨县| 宣城市| 登封市| 岳普湖县| 隆回县| 涟水县| 藁城市| 台中市| 新津县| 同江市| 潢川县| 英德市| 五常市| 伊吾县| 焉耆| 梨树县| 什邡市|