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

首頁 > 網(wǎng)站 > Nginx > 正文

詳解Nginx 動(dòng)態(tài) DNS 反向代理的幾種寫法

2024-08-30 12:22:27
字體:
供稿:網(wǎng)友
這篇文章主要介紹了詳解Nginx 動(dòng)態(tài) DNS 反向代理的幾種寫法,詳細(xì)的介紹了Nginx 動(dòng)態(tài) DNS 反向代理的4種方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下

這篇文章的更新拖了半個(gè)月,真的是感動(dòng)中國了。

Nginx 默認(rèn)會(huì)緩存 DNS,大家都知道,如果做反向代理,其實(shí)是訪問的目標(biāo) ip,所以一旦緩存了目標(biāo) ip 就會(huì)非常麻煩。

茴字的四種寫法遠(yuǎn)近聞名,萬萬沒想到,Nginx 動(dòng)態(tài) DNS 反向代理也有 N 種玩法,這主要取決于你用的 Nginx 版本,當(dāng)然運(yùn)維告訴我,最好是不要用動(dòng)態(tài) DNS,但是基于業(yè)務(wù)需要,咱們也沒有辦法。

茴字的第一種寫法:Nginx

在 Nginx 中通過設(shè)置變量可以曲線救國,當(dāng)然有缺點(diǎn),通過變量的方法沒有辦法進(jìn)行負(fù)載均衡,非常麻煩,當(dāng)然如果你只有單機(jī)(在實(shí)際業(yè)務(wù)場景中幾乎不存在),還是可以一試的:

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

第二種寫法:Nginx Plus

當(dāng)然 Nginx 不太好用,增強(qiáng)版的 Plus 就提供了一個(gè)更棒的寫法,它支持在 server 中寫入:

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

第三種寫法:Tengine

Tengine 是淘寶家的魔改 Nginx,其實(shí)我挺煩的,因?yàn)樽铋_始我不知道我們用的是 Tengine,導(dǎo)致配置沒有什么卵用,但是 Tengine 對(duì)于動(dòng)態(tài)域名解析卻支持的非常不錯(cuò),官方文檔寫得也很清楚。

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

其他

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

參考

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

武林網(wǎng)之家提示您:這篇文章你看完了!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 徐州市| 正蓝旗| 佛冈县| 梁山县| 鹤庆县| 吐鲁番市| 巴里| 宜兰市| 荣成市| 阿鲁科尔沁旗| 通州区| 镇安县| 鄱阳县| 安西县| 溧阳市| 渝北区| 桃园市| 新乐市| 吉水县| 马鞍山市| 三穗县| 湟中县| 明水县| 新乡市| 吴川市| 延安市| 陆良县| 泉州市| 新绛县| 筠连县| 义乌市| 贡觉县| 静安区| 项城市| 垦利县| 陆良县| 砚山县| 玉溪市| 田东县| 安多县| 荥阳市|