当前位置: 首页 > news >正文

Nginx 配置实例-负载均衡

一、实现效果

浏览器地址栏输入地址 http://192.168.137.129/edu/a.html,负载均衡效果,将请求平均分配到8080和8081两台服务器上。

二、准备工作

1. 准备两台tomcat服务器,一台8080,一台8081 (具体操作如下两个链接)

Nginx配置实例-反向代理案例一https://liush.blog.csdn.net/article/details/129448689

Nginx配置实例-反向代理案例二https://liush.blog.csdn.net/article/details/129450909

2. 在两台tomcat里面webapps目录中,创建名称是edu文件夹,在edu文件夹中创建页面a.html(让a.html内容不一样,查看效果),用于测试。

3. 分别启动 tomcat 访问资源页面 a.html

三、配置nginx.conf文件

1. 修改配置文件

{
#上游服务器 服务器集合upstream serverList{server 192.168.230.130:8080;server 192.168.230.130:8081;}server {listen       80;server_name  localhost;#charset koi8-r;#access_log  logs/host.access.log  main;location /edu/ {#表示访问端口号为8080tomcat的edu项目#proxy_pass http://192.168.230.130:8080;proxy_pass http://serverList;}
......
}

2. 启动测试

默认遵循 轮询机制:刷新切换访问

 

四、nginx分配服务器策略

1. 轮询(默认)

第三部分展示的就是默认轮询机制

每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器 down 掉,能自动剔除。

2. weight

weight 代表权,重默认为1,权重越高被分配的客户端越多。

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

修改配置文件 nginx.conf 如下所示 

    #上游服务器 服务器集合upstream serverList{server 192.168.230.130:8080 weight=1;server 192.168.230.130:8081 weight=2;}

 

重新加载配置文件
[root@localhost sbin]# ./nginx -s reload

启动测试结果:8081执行两次后,8080执行一次

3. ip_hash

每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 例如

    #上游服务器 服务器集合upstream serverList{ip_hash;server 192.168.230.130:8080;server 192.168.230.130:8081;}

4. fair

按后端服务器的响应时间来分配请求,响应时间短的优先分配。

    #上游服务器 服务器集合upstream serverList{server 192.168.230.130:8080;server 192.168.230.130:8081;fair;}

5. 其他参数

upstream serverList{
        server 192.168.230.130:8080 down;
        server 192.168.230.130:8081 weight=2;

        server 192.168.230.130:8082 backup;
}
① down:表示单前的server暂时不参与负载

② weight :默认为1.weight越大,负载的权重就越大。

③ Backup:其它所有的非backup机器down或者忙的时候,才会去请求backup机器;所以这台机器压力会最轻。 

http://www.lryc.cn/news/38436.html

相关文章:

  • 引出生命周期、生命周期_挂载流程、生命周期_更新流程、生命周期_销毁流程、生命周期_总结——Vue
  • C++ STL学习之【vector的使用】
  • 方差分析与单因素方差分析
  • 分布式链路追踪组件skywalking介绍
  • SUBMIT的用法
  • 网页基本标签、图像标签、链接标签、块内元素和块元素、列表标签、表格标签
  • RxJava操作符变换过程
  • 开放平台订单接口
  • CDN相关知识点
  • 【论文阅读】注意力机制与二维 TSP 问题
  • [深入理解SSD系列 闪存实战2.1.7] NAND FLASH基本编程(写)操作及原理_NAND FLASH Program Operation 源码实现
  • PMP项目管理项目资源管理
  • 程序的编译和链接
  • Win11的两个实用技巧系列之无法联网怎么办、耳机没声音的多种解决办法
  • 【微信小程序】-- 自定义组件 - 数据监听器 - 案例 (三十五)
  • Linux - 第7节 - 进程间通信
  • # 数据完整性算法在shell及python中的实践
  • QEMU启动x86-Linux内核
  • C/C++每日一练(20230311)
  • 哪个牌子的洗地机耐用?耐用的洗地机推荐
  • 搭建一个中心化的定时服务
  • 【CSS】快速入门笔记
  • 第161篇 笔记-去中心化的含义
  • 「计算机组成原理」数据的表示和运算(二)
  • 建立自己的博客
  • Docker 安装mysql Mac 环境下
  • 《C++代码分析》第三回:类成员函数覆盖父类函数的调用(分析this指针的变化)
  • Altium designer--软件简介及安装教程(Altium designer16)
  • Windows系统下基于开源软件的多物理场仿真
  • 【STL】list剖析及模拟实现