Nginx负载均衡记录
一、下載安裝。
? ? ? 我是在windows環境下配置的。在nginx官網上下載最新穩定版nginx,解壓后有一個nginx.exe文件。cmd下執行nginx,瀏覽器訪問nginx所在ip(端口默認80)。訪問成功則代表啟動成功,停止服務cmd下nginx.exe -s -stop。
二、配置負載
在conf/nginx.conf中找到http {
? ? include ? ? ? mime.types;...}
? ? ? ? 添加:?upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
? ? }
找到http{...}下的server {...}
添加:server {
? ? ? ? listen ? ? ? 80;
? ? ? ? server_name ?localhost;
location / {
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504 http_404;(目的是錯誤時自動跳轉到下一個負載服務器)
proxy_connect_timeout ? ? ? 5s;
proxy_read_timeout ? ? ? ? ?1s;
? ? ? ? proxy_pass http://123;(與upstream對應)
? ? ? ? }
以上配置可以實現服務器節點掛掉時,不影響訪問。
三、nginx的四種調度算法
1、輪詢默認的
upstream 123{
server 127.0.0.1:8080;
server 127.0.0.1:8090;
?? ? }
2、ip_hash 限定ip,即每個ip訪問的相同的節點服務器,session可以對應上了。
upstream 123{
ip_hash;
server 127.0.0.1:8080;
server 127.0.0.1:8090;
}
3、url_hash 限定url,即根據url現在訪問相同的節點服務器。需要下載hash包使用。
4、fair 根據頁面大小和效率自動分配,需要下載fair包。
四、注意
weight配置權重。upstream相應節點后weight=1,數字越大,被分配概率也越大。
down表示暫時不加入負載,什么操作讓其加入我也不知道。。。
max_fails?表示最大失敗次數。
fail_timeout:失敗后該節點暫停的時間。
backup 其他節點處問題了訪問它,保證安全性的一個操作。
ip_hash 時不能配置weight和backup。
五、nginx添加模塊
cd nginx目錄
./configure --add-module=新增模塊路徑
make
make install
總結
以上是生活随笔為你收集整理的Nginx负载均衡记录的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring的Aop使用问题
- 下一篇: 数据库分页