首頁 >運維 >Nginx >nginx負載平衡資料庫怎麼做

nginx負載平衡資料庫怎麼做

(*-*)浩
(*-*)浩原創
2019-11-01 11:46:193632瀏覽

nginx負載平衡資料庫怎麼做

關於nginx的安裝我就不多說了,網路上一搜一大把

要注意的是,nginx在1.9版本之前是只能設定http協定的,不接受tcp協定的代理,所以nginx最常見的功能是伺服器的負載平衡配置,大致流程如下:   (推薦學習:nginx教學

#以TONCAT 的網頁伺服器舉例:

nginx負載平衡資料庫怎麼做

Nginx的作用主要是分發請求,減少單一Tomcat的壓力,從而達到提高伺服器承載請求的能力(也就是能夠處理高並發的情況伺服器不會癱瘓)

使用Nginx配置mysql負載平衡與上述差不多,只不過TOMCAT將不再連接同一個資料庫伺服器,而是連接nginx,nginx分發請求給不同的資料庫伺服器。

要注意的是,這種情況下,我為了保證TOMCAT拿到的資料是正確的,需要保證不同資料庫之間的資料是同步的,我這次應用程式中所使用的是mysql自帶的同步功能,設定為主主同步(其實就是多個主從同步)

nginx負載平衡資料庫怎麼做

#mysql負載平衡的配置也是十分簡單:

在nginx.conf文字最後一行新增下述程式碼即可:

stream {
    server {
       listen 3306;
       proxy_pass db;    
    }
    upstream db {
       server 192.168.18.130:3305;
       server 192.168.18.129:3305;
    }
 
}

需要說明的是,上述配置中監聽了3306端口,即3306連接埠將被nginx佔用,而mysql的預設使用連接埠為3306,這將導致mysql無法啟動,所以需要將mysql的連接埠號碼改為其他連接埠(本文中將其設定成3305,這將會在mysq主同步的博文中說明),proxy_pass即為代理位址

以上是nginx負載平衡資料庫怎麼做的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn