91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

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

發布時間:2020-10-03 10:35:55 來源:腳本之家 閱讀:235 作者:敖天羽 欄目:服務器

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

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

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

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

凤山市| 光山县| 什邡市| 唐山市| 房山区| 任丘市| 龙州县| 赣榆县| 辛集市| 安乡县| 阿巴嘎旗| 屯门区| 嵊州市| 三穗县| 历史| 长汀县| 揭东县| 米泉市| 化德县| 金湖县| 长岭县| 湛江市| 巫山县| 北流市| 汶川县| 平远县| 德州市| 广德县| 辛集市| 来宾市| 南昌市| 哈尔滨市| 垣曲县| 綦江县| 屯留县| 贵德县| 舞钢市| 大连市| 惠水县| 包头市| 灵璧县|