linux下nginx負(fù)載均衡搭建的方法步驟
首先先了解下負(fù)載均衡,假設(shè)一個(gè)場(chǎng)景,如果有1000個(gè)客戶(hù)同時(shí)訪問(wèn)你服務(wù)器時(shí),而你只有一臺(tái)服務(wù)器的Nginx,且只有一個(gè)MySQL服務(wù)器,那么這些請(qǐng)求
可能會(huì)高出你的的服務(wù)器承受能力,就會(huì)down掉;
解決方法:
1.垂直升級(jí):就是增加服務(wù)器的配置,CPU,內(nèi)存等
2.水平升級(jí):添加多臺(tái)服務(wù)器來(lái)分擔(dān)服務(wù)器壓力
常見(jiàn)的負(fù)載均衡器
根據(jù)工作在的協(xié)議層劃分可劃分為:
- 四層負(fù)載均衡:根據(jù)請(qǐng)求報(bào)文中的目標(biāo)地址和端口進(jìn)行調(diào)度
- 七層負(fù)載均衡:根據(jù)請(qǐng)求報(bào)文的內(nèi)容進(jìn)行調(diào)度,這種調(diào)度屬于「代理」的方式
根據(jù)軟硬件劃分:
硬件負(fù)載均衡: ◦F5 的 BIG-IP
- Citrix 的 NetScaler
- 這類(lèi)硬件負(fù)載均衡器通常能同時(shí)提供四層和七層負(fù)載均衡,但同時(shí)也價(jià)格不菲
軟件負(fù)載均衡: ◦TCP 層:LVS,HaProxy,Nginx
- 基于 HTTP 協(xié)議:Haproxy,Nginx,ATS(Apache Traffic Server),squid,varnish
- 基于 MySQL 協(xié)議:mysql-proxy
【一、Nginx能做什么】
1、http服務(wù)器。Nginx是一個(gè)http服務(wù)可以獨(dú)立提供http服務(wù)??梢宰鼍W(wǎng)頁(yè)靜態(tài)服務(wù)器。
2、虛擬主機(jī)。可以實(shí)現(xiàn)在一臺(tái)服務(wù)器虛擬出多個(gè)網(wǎng)站。例如個(gè)人網(wǎng)路使用的虛擬主機(jī)。
3、反向代理,負(fù)載均衡。當(dāng)網(wǎng)站的訪問(wèn)量達(dá)到一定程度后,單臺(tái)服務(wù)器不能滿足用戶(hù)的請(qǐng)求時(shí),需要用多臺(tái)服務(wù)器集群可以使用nginx做反向代理。并且多臺(tái)服務(wù)器可以平均分擔(dān)負(fù)載,不會(huì)因?yàn)槟撑_(tái)服務(wù)器
4、解決跨域問(wèn)題。
【二、安裝】
1、yum install nginx,提示No package nginx available。因?yàn)閚ginx位于第三方的yum源里面,而不在centos官方y(tǒng)um源里面,所以先yum install epel-release,待epel安裝完后,再yum install nginx
2、service nginx start 啟動(dòng)nginx,在瀏覽器輸入ip地址即可訪問(wèn)nginx的界面,如果訪問(wèn)不了,查看防火墻的訪問(wèn)狀態(tài),增加80端口訪問(wèn)
【三、負(fù)載均衡配置】
nginx啟動(dòng)之后,我們需要根據(jù)需要修改配置文件,可以先使用 ps-ef|grep nginx查看當(dāng)前使用的配置文件。
在http模塊中添加如下配置
upstream servers {
server 192.168.80.1:8010 weight=10;
server 192.168.80.10:8010 weight=10;
}
把server改為
server {
listen 80;
server_name test.nginx.com;
location / {
proxy_pass http://servers;
}
location /buy {
proxy_pass http://172.18.144.23:5789/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
最后重啟service nginx reload
另外要切記開(kāi)放防火墻訪問(wèn)端口才可以正常訪問(wèn)的
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
nginx http響應(yīng)限速的具體實(shí)現(xiàn)
本文主要介紹了nginx http響應(yīng)限速的具體實(shí)現(xiàn),可以使用limite_rate和limit_rate_after來(lái)限制HTTP響應(yīng)的速度,具有一定的參考價(jià)值,感興趣的可以了解一下2024-05-05
Windows系統(tǒng)下安裝及部署Nginx詳細(xì)教程(含多個(gè)站點(diǎn)部署)
Nginx是一個(gè)很強(qiáng)大的高性能Web和反向代理服務(wù),也是一種輕量級(jí)的Web服務(wù)器,可以作為獨(dú)立的服務(wù)器部署網(wǎng)站,應(yīng)用非常廣泛,這篇文章主要給大家介紹了關(guān)于Windows系統(tǒng)下安裝及部署Nginx(含多個(gè)站點(diǎn)部署)的相關(guān)資料,需要的朋友可以參考下2024-01-01
nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟
nginx+uwsgi+django是我們常用的django部署方式。這篇文章主要介紹了nginx+uwsgi啟動(dòng)Django項(xiàng)目的詳細(xì)步驟,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2018-10-10
Nginx 解決WebApi跨域二次請(qǐng)求以及Vue單頁(yè)面的問(wèn)題
下面小編就為大家分享一篇Nginx 解決WebApi跨域二次請(qǐng)求以及Vue單頁(yè)面的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-01-01
nginx connect() to unix:/var/run/php-fpm.sock failed (11: Re
這篇文章主要介紹了nginx connect() to unix:/var/run/php-fpm.sock failed (11: Resource temporarily unavailable),需要的朋友可以參考下2015-01-01
解決Nginx網(wǎng)關(guān)超時(shí)出現(xiàn)504 GATEWAY TIMEOUT的問(wèn)題
這篇文章主要給大家介紹了如何解決Nginx網(wǎng)關(guān)超時(shí)出現(xiàn)504 GATEWAY TIMEOUT的問(wèn)題,文章通過(guò)代碼示例和圖文結(jié)合介紹的非常詳細(xì),有遇到相同問(wèn)題的朋友可以參考閱讀本文2023-11-11

