搜尋

首頁  >  問答  >  主體

openresty - 利用lua-nginx-module修改upstream中內容並重新reload

大神能不能提供一下思路,例如我在nginx.conf中有如下upstream區塊:

upstream value{
    server 127.0.0.1:1234;
    server 127.0.0.1:5678;
}

nginx向外提供接口,例如是127.0.0.1/change,可以清空以上upstream中的內容,並重新從redis中加載所有後端伺服器資訊並寫入到nginx.conf檔案中的如上upstream中,最後執行./nginx -s reload。

阿神阿神2744 天前704

全部回覆(2)我來回復

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 17:12:36

    查看lua有沒有file模組,能對檔案操作,還要看看lua能不能呼叫shell或類似nginx 訊號來重載nginx設定檔。

    回覆
    0
  • 漂亮男人

    漂亮男人2017-05-16 17:12:36

    感覺你是想實現類似動態負載的功能麼,如果是的話,我感覺你可以使用openrestyngx.balancer来解决。这样无需重启nginx,便可以動態的更改後端伺服器了。

    回覆
    0
  • 取消回覆