linux下nginx負載均衡搭建的方法步驟
首先先了解下負載均衡,假設一個場景,如果有1000個客戶同時訪問你服務器時,而你只有一臺服務器的Nginx,且只有一個MySQL服務器,那么這些請求
可能會高出你的的服務器承受能力,就會down掉;
解決方法:
1.垂直升級:就是增加服務器的配置,CPU,內存等
2.水平升級:添加多臺服務器來分擔服務器壓力
常見的負載均衡器
根據工作在的協議層劃分可劃分為:
- 四層負載均衡:根據請求報文中的目標地址和端口進行調度
- 七層負載均衡:根據請求報文的內容進行調度,這種調度屬于「代理」的方式
根據軟硬件劃分:
硬件負載均衡: ◦F5 的 BIG-IP
- Citrix 的 NetScaler
- 這類硬件負載均衡器通常能同時提供四層和七層負載均衡,但同時也價格不菲
軟件負載均衡: ◦TCP 層:LVS,HaProxy,Nginx
- 基于 HTTP 協議:Haproxy,Nginx,ATS(Apache Traffic Server),squid,varnish
- 基于 MySQL 協議:mysql-proxy
【一、Nginx能做什么】
1、http服務器。Nginx是一個http服務可以獨立提供http服務??梢宰鼍W頁靜態(tài)服務器。
2、虛擬主機。可以實現在一臺服務器虛擬出多個網站。例如個人網路使用的虛擬主機。
3、反向代理,負載均衡。當網站的訪問量達到一定程度后,單臺服務器不能滿足用戶的請求時,需要用多臺服務器集群可以使用nginx做反向代理。并且多臺服務器可以平均分擔負載,不會因為某臺服務器
4、解決跨域問題。
【二、安裝】
1、yum install nginx,提示No package nginx available。因為nginx位于第三方的yum源里面,而不在centos官方yum源里面,所以先yum install epel-release,待epel安裝完后,再yum install nginx
2、service nginx start 啟動nginx,在瀏覽器輸入ip地址即可訪問nginx的界面,如果訪問不了,查看防火墻的訪問狀態(tài),增加80端口訪問
【三、負載均衡配置】
nginx啟動之后,我們需要根據需要修改配置文件,可以先使用 ps-ef|grep nginx查看當前使用的配置文件。
在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
另外要切記開放防火墻訪問端口才可以正常訪問的
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Windows系統下安裝及部署Nginx詳細教程(含多個站點部署)
Nginx是一個很強大的高性能Web和反向代理服務,也是一種輕量級的Web服務器,可以作為獨立的服務器部署網站,應用非常廣泛,這篇文章主要給大家介紹了關于Windows系統下安裝及部署Nginx(含多個站點部署)的相關資料,需要的朋友可以參考下2024-01-01
Nginx 解決WebApi跨域二次請求以及Vue單頁面的問題
下面小編就為大家分享一篇Nginx 解決WebApi跨域二次請求以及Vue單頁面的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧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網關超時出現504 GATEWAY TIMEOUT的問題
這篇文章主要給大家介紹了如何解決Nginx網關超時出現504 GATEWAY TIMEOUT的問題,文章通過代碼示例和圖文結合介紹的非常詳細,有遇到相同問題的朋友可以參考閱讀本文2023-11-11

