基于Nginx的负载均衡实验,验证不同负载均衡策略。

①首先安装Nginx

进入官网:nginx news

选择适合自己的版本安装,我选择的是1.18.0版本

安装完成后运行,浏览器中输入localhost,若弹出Nginx欢迎界面则安装成功。

②在nginx目录下打开conf文件,找到nginx.conf文件,以记事本方式打开(或是使用其他编辑软件)。

③为实现负载均衡,需要使用到nginx的upstream模块

这里我使用127.0.0.1:2321和server 127.0.0.1:2322两个IP做服务器

接着修改location后的路径

 修改并保存,之后对于80端口的访问将通过负载均衡策略分配到2321和2322端口上

④配置并运行js文件

在任意目录下创建js文件,这里我命名为webserver1和webserver2

打开文件,进行内容自定义,监督端口设定和文本编辑

在js文件目录下打开cmd,输入node webserver1.js(需提前安装node),回车后运行http服务器:

 

 同理,服务器2也跑起来:

至此,两个HTTP服务器已经启动完成,下面进行负载均衡实验。

⑤负载均衡策略

1、轮询(默认)

每个请求按时间顺序逐一分配到不同的后端服务器

修改nginx.conf文件

 

 之后在cmd执行:nginx -s reload进行重载

对80端口测试:

可见,以 S1,S2,S1,S2,S1...的顺序进行轮询。

2、指定权重

指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。

同样修改nginx.conf文件

重载。

测试:

 可见,S1访问几率明显高于S2

 3、IP绑定 ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器

修改文件:

 重载。

测试:

4、fair(第三方)
按后端服务器的响应时间来分配请求,响应时间短的优先分配。

修改文件

 重载。

测试:

5、url_hash(第三方)
按访问url的hash结果来分配请求,使每个url定向到同一个后端服务器,后端服务器为缓存时比较有效。

 不是很理解这种策略的实现方式,故没有下文,希望有大佬指导。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值