博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
负载均衡配置篇(Nginx)
阅读量:5224 次
发布时间:2019-06-14

本文共 2257 字,大约阅读时间需要 7 分钟。

负载均衡 == 分身的能力。

既然要有分身的能力嘛,这好办,多弄几台服务器就搞定了。

今天我们讲的实例嘛…..我们还是先看图比较好:

还是图比较清晰,以下我都用别名称呼:

  PA : 负载均衡服务器/WEB入口服务器/www.mydomain.com  P1 : WEB服务器/分身1/192.168.2.3  P2 : WEB服务器/分身2/192.168.2.4  P3 : WEB服务器/分身3/192.168.2.5

 

PS:首先我们学这个的开始之前吧,不懂防火墙的童鞋们,建议你们把PA、P1、P2、P3的防火墙关闭,尽量不要引起不必要的麻烦。

首先 :PA、P1、P2、P3都安装了Nginx,不会安装的可以去官网查看教程:(中文版教程、非常的牛X)

1. 装完之后哈,我们先找到 PA 的nginx.conf配置文件:

在http段加入以下代码:

upstream servers.mydomain.com {     server 192.168.2.3:80;     server 192.168.2.4:80;     server 192.168.2.5:80;}

当然嘛,这servers.mydomain.com随便取的。

那么PA的server配置如下:

在http段加入以下代码:

server{     listen 80;     server_name www.mydomain.com;     location / {         proxy_pass http://servers.mydomain.com;         proxy_set_header Host $host;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     } }

那么P1、P2、P3的配置如下:

server{     listen 80;     server_name www.mydomain.com;     index index.html;     root /data/htdocs/www; }

 

2. 有人就问了,我用其它端口行不行啊,当然也是可以的,假设PA的nginx.conf配置文件:

upstream servers2.mydomain.com {     server 192.168.2.3:8080;     server 192.168.2.4:8081;     server 192.168.2.5:8082;}server{     listen 80;     server_name www.mydomain.com;     location / {         proxy_pass http://servers2.mydomain.com;         proxy_set_header Host $host;         proxy_set_header X-Real-IP $remote_addr;         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;     } }

 

那么P1的配置如下:

server{     listen 8080;     server_name www.mydomain.com;     index index.html;     root /data/htdocs/www; }

 

P2配置:

server{     listen 8081;     server_name www.mydomain.com;     index index.html;     root /data/htdocs/www; }

 

P3配置:

server{     listen 8082;     server_name www.mydomain.com;     index index.html;     root /data/htdocs/www; }

 

重启之后,我们访问下,恩不错,确实很厉害。

当我们把一台服务器给关闭了后。
访问网址,还是OK的。说明:负载均衡还要懂得修理他(T出泡妞队营)

 

3. 那么负载均衡如何保持通话呢?

当然现在有好几种方案,我们这次只是讲一种。
IP哈希策略
  优点:能较好地把同一个客户端的多次请求分配到同一台服务器处理,避免了加权轮询无法适用会话保持的需求。
  缺点:当某个时刻来自某个IP地址的请求特别多,那么将导致某台后端服务器的压力可能非常大,而其他后端服务器却空闲的不均衡情况。

要想了解更深刻的印象,这儿有篇博文,推荐可以看看:

nginx的配置也很简单,代码如下:

upstream servers2.mydomain.com {     server 192.168.2.3:8080;     server 192.168.2.4:8081;     server 192.168.2.5:8082;    ip_hash;}

 

其实一切就这么简单,来赶快试试吧!

转载于:https://www.cnblogs.com/Pxhphp/p/6397399.html

你可能感兴趣的文章
303. Range Sum Query - Immutable
查看>>
图片加载失败显示默认图片占位符
查看>>
【★】浅谈计算机与随机数
查看>>
《代码阅读方法与实现》阅读笔记一
查看>>
解决 sublime text3 运行python文件无法input的问题
查看>>
javascript面相对象编程,封装与继承
查看>>
Atlas命名空间Sys.Data下控件介绍——DataColumn,DataRow和DataTable
查看>>
Java中正则表达式的使用
查看>>
算法之搜索篇
查看>>
新的开始
查看>>
java Facade模式
查看>>
NYOJ 120校园网络(有向图的强连通分量)(Kosaraju算法)
查看>>
SpringAop与AspectJ
查看>>
Leetcode 226: Invert Binary Tree
查看>>
http站点转https站点教程
查看>>
解决miner.start() 返回null
查看>>
关于MFC中窗口的销毁
查看>>
bzoj 2007: [Noi2010]海拔【最小割+dijskstra】
查看>>
BZOJ 1001--[BeiJing2006]狼抓兔子(最短路&对偶图)
查看>>
C# Dynamic通用反序列化Json类型并遍历属性比较
查看>>