Nginx 配置实例-负载均衡

news2024/12/24 0:00:14

一、实现效果

浏览器地址栏输入地址 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.coloradmin.cn/o/404014.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

亚信科技新“三驾马车”再创佳绩,与数字经济同频共振

‍数据智能产业创新服务媒体——聚焦数智 改变商业近日,亚信科技公布了2022年财报。财报显示,2022年,亚信科技实现营收77.38亿元,同比上升12.2%;毛利润29.39亿元,同比上升11.1%,毛利率达38.0%&…

分布式链路追踪组件skywalking介绍

SkyWalking组件概念 一个开源的可观测平台, 用于从服务和云原生基础设施收集, 分析, 聚合及可视化数据。SkyWalking 提供了一种简便的方式来清晰地观测分布式系统, 甚至横跨多个云平台。SkyWalking 更是一个现代化的应用程序性能监控(Application Performance Monitoring)系统…

通过Session共享数据验证码进行用户登录

通过Session共享数据验证码进行用户登录 需求: 访问带有验证码的登录页面login.jsp。用户输入用户名,密码以及验证码。 ①。如果用户名和密码输入有误,跳转登陆页面,提示:用户名或密码错误。 ②。如果验证码输入有误…

核方法(kernel Method)

核方法 核方法定义 一种能够将在原始数据空间中的非线性数据映射到高维线性可分的方法。 核方法的用处 1、低维数据非线性,当其映射到高维空间(feature space)时,可以用线性方法对数据进行处理。 2、线性学习器相对于非线性学…

从MySQL innoDB的特性Doublewrite buffer谈起

文章目录前言什么是Doublewrite buffer为什么要叫它Doublewrite呢,双写分别是哪两次写,体现在了什么地方呢为什么需要Doublewrite bufferDoublewrite buffer的具体使用1.假如还没有进行第一次写的时候crash了,也就是Doublewrite buffer和磁盘…

最大值池化与均值池化比较分析

1 问题在深度学习的卷积网络过程中,神经网络有卷积层,池化层,全连接层。而池化层有最大值池化和均值池化两种情况,而我们组就在思考,最大值池化和均值池化有什么区别呢?两者的模型准确率是否有所不同&#…

RTP载荷H264(实战细节)

RTP包由两部分组成,RTP头和RTP载荷: RTP头 RTP头的 结构如下: 代码结构: typedef struct RtpHdr {uint8_t cc : 4, // CSRC countx : 1, // header extendp : 1, // padding flagversion : 2; // versionuint8_t …

【Oracle 19c】解决 Oracle EM(Enterprise Manager) Express 切换回旧版后无法访问的问题

文章目录问题描述解决方案解决过程1、按 Oracle EM Express 提示下载 Adobe Flash Player PPAPI 版1、按 F12 查看 HTTP 请求头2、找到问题后使用其他浏览器尝试问题描述 由于从 Oracle Database 19c 开始,Oracle EM(Enterprise Manager) Express(Oracl…

【论文阅读】注意力机制与二维 TSP 问题

前置知识 注意力机制 见 这篇 二维 TSP 问题 给定二维平面上 nnn 个点的坐标 S{xi}i1nS\{x_i\}_{i1}^nS{xi​}i1n​,其中 xi∈[0,1]2x_i\in [0,1]^2xi​∈[0,1]2,要找到一个 1∼n1\sim n1∼n 的排列 π\piπ ,使得目标函数 L(π∣s)∥xπ…

2023年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛) A — E

2023年中国高校计算机大赛-团队程序设计天梯赛(GPLT)上海理工大学校内选拔赛(同步赛) 文章目录A -- A Xor B Problem题目分析codeB -- 吃苹果题目分析codeC -- n皇后问题题目分析codeD -- 分苹果题目分析codeE -- 完型填空题目分析codeA – A…

单片机——矩阵按键模块

主要目的 学会按键扫描 1.延时函数 延时函数部分详见链接: 单片机控制一盏灯的亮与灭程序解释 void delay (uint k) //定义延时函数{uint i,j;for(i<0;i<k;i){for(j0;j<113;j){;}}}这个程序里面的延时函数的目的是按键消抖。 2.按键扫描模块 这是本次实验的重点&a…

JS的执行机制

javaScript的执行机制 JS是单线程 单线程&#xff1a;所有的任务执行时需要排队&#xff0c;前一个任务结束&#xff0c;才会执行后一个任务。缺点&#xff1a;如果前一个任务耗时很长&#xff0c;后一个任务就会一直等待执行。会导致JS 执行的时间过长&#xff0c;造成页面的…

外贸建站如何提高搜索引擎排名,吸引更多潜在客户?

在如今全球贸易日益繁荣的背景下&#xff0c;越来越多的企业开始重视外贸建站&#xff0c;并寻求提高搜索引擎排名以吸引更多潜在客户。 那么&#xff0c;如何才能有效地提高外贸网站的搜索引擎排名呢&#xff1f;本文将为您详细介绍几个有效的方法。 一、关键词优化 关键词…

使用【Python】快速生成本项目的requeirments.txt

在Python项目中&#xff0c;我们通常需要使用许多第三方库来提供额外的功能和工具。但是&#xff0c;直接将这些库上传到Git仓库并不是一种好的做法&#xff0c;因为这会使得代码库变得过于臃肿&#xff0c;并且很难管理。此外&#xff0c;有时候在部署应用程序时也需要安装特定…

等价类划分法

等价类划分法 测试一个两位数的加法计算器 测试需求&#xff1a; 测试两个参数的值相加后的结果是否正确 其中&#xff1a;输入的数值在-99到99之间&#xff0c;大于99或小于-99的输入应被拒绝&#xff0c;并显示错误信息 根据测试需求&#xff0c;我们开始测试 分别给第一个…

因果图判定表法

因果图&判定表法 在了解了等价类和边界值比较适宜搭档的测试用例方法之后 接下来我们来了解另外一队就是因果图和判定表 因果图会产生判定表法 因果图法 等价类划分法和边界值分析方法都是着重考虑输入条件而不考虑输入条件的各种组合、输入条件之间的相互制约关系。例…

每天5分钟玩转机器学习算法:逆向概率的问题是什么?贝叶斯公式是如何解决的?

本文重点 前面我们已经知道了贝叶斯公式,以及贝叶斯公式在机器学习中的应用,那么贝叶斯公式究竟解决了一个什么样的问题呢?贝叶斯是为了解决逆向概率的问题。 正向的概率和逆向的概率 正向概率:假设袋子里面有N个白球,有M个黑球,你伸手一摸,那么问题就是你摸出黑球的概…

金三银四、金九银十 面试宝典 MySQL面试题 超级无敌全的面试题汇总(超万字的面试题,让你的MySQL无可挑剔)

MySQL数据库 - 面试宝典 又到了 金三银四、金九银十 的时候了&#xff0c;是时候收藏一波面试题了&#xff0c;面试题可以不学&#xff0c;但不能没有&#xff01;&#x1f941;&#x1f941;&#x1f941; 一个合格的 计算机打工人 &#xff0c;收藏夹里必须有一份 MySQL 八…

snmputilg和snmputil的下载 / Win10下SNMP服务的安装和配置

文章目录1. snmputilg和snmputil的下载2. 在Windows上安装SNMP服务3.在Windows上进行SNMP服务的相关配置4.测试是否配置成功1. snmputilg和snmputil的下载 snmputilg和snmputil的下载 该工具是学习和模拟SNMP协议的十分常用的工具。 2. 在Windows上安装SNMP服务 右键开始图标—…

【JVM篇2】垃圾回收机制

目录 一、GC的作用 申请变量的时机&销毁变量的时机 内存泄漏 垃圾回收的劣势 二、GC的工作过程 回收垃圾的过程 第一阶段&#xff1a;找垃圾/判定垃圾 方案1&#xff1a;基于引用计数(非Java语言) 引用计数方式的缺陷 方案2&#xff1a;可达性分析(基于Java语言) …