nginx實現兩臺服務負載均衡

SmallForest發表於2019-01-19

nginx實現兩臺伺服器的負載均衡

使用背景

現在有兩臺伺服器,其中有一臺作為外網伺服器和應用伺服器(A),另一臺做MySQL和應用伺服器(B)。需要在AB兩臺伺服器中實現負載均衡。

實現思路

A安裝nginx實現代理,需要在配置中新增兩個監聽,一個監聽8080埠,一個監聽80埠。其中8080埠就是我們的應用埠,80埠是外網埠。A分發作為應用伺服器要分發給自己和B,B就比較簡單直接執行應用,開啟8080埠。

效果展示

我這裡AB都執行的GO的beego , API。在AB輸出不一樣的值。瀏覽器重新整理可以看到不用的值返回

寫到最後

叢集就是準備多個類似B的伺服器,加入A的分發服務池中。
NGINX的分發方式也有很多,有ip_hash模式是解決session共享問題的。不過現在的api中都不使用session了,基於JWT的自驗證方式,才比較好。
配置等專案上線補上。

相關文章