Windows下使用Nginx+Tomcat做负载均衡的完整步骤


Posted in Servers onMarch 31, 2021

前言

今天,王子与大家闲谈一下如何在Windows下使用Nginx+Tomcat做负载均衡的完整步骤,小伙伴们可以试着自己动手实践一下哦。

另外说明一点,本篇文章是纯实操文章,不涉及太多原理的解读,后期可能单独开一个专栏来深入讨论Nginx的原理。

好了那我们直接开始。

下载Nginx

首先我们去官网下载一个Windows稳定版本的Nginx,官网地址:http://nginx.org/en/download.html

Windows下使用Nginx+Tomcat做负载均衡的完整步骤

下载后解压到想要的位置,小伙伴们要注意了,千万不要把它解压到带有中文的文件夹下,会导致不能启动的。

Window上的启动非常简单,我们只要进入文件夹,双击nginx.exe就可以直接启动了

nginx的默认端口是80端口,由于王子电脑上的80端口被ISS占用,所以我们修改一下端口,改成81端口。

修改端口也很容易,直接进入conf文件夹,打开nginx.conf文件,修改如下位置即可:

Windows下使用Nginx+Tomcat做负载均衡的完整步骤

修改后,我们直接双击就可以启动Nginx服务了,你会看到一个一闪而过的命令窗口,不用在意,其实已经启动成功了,我们在浏览器输入http://localhost:81/,就可以看到Nginx的启动页面了。

Windows下使用Nginx+Tomcat做负载均衡的完整步骤

这样我们的Nginx环境就部署好了。

配置文件介绍

现在我们有了Nginx的环境,接下来我们的目标是通过Nginx将用户的请求反向代理到Tomcat上,那么我们首先启动一台Tomcat服务器,默认配置即可。

然后我们打开nginx.conf文件,王子给大家简单介绍一下里面的一些配置的含义。

listen    81;
    server_name localhost;

listen:刚才我们已经改过了,它就是代表Nginx的监听端口,这个没什么可说的

server_name:表示监听到之后请求转到哪里,默认直接转到本地。

location / {
      root  html;
      index index.html index.htm;
    }

location:表示匹配的路径,这时配置了/表示所有请求都被匹配到这里

root:里面配置了root这时表示当匹配这个请求的路径时,将会在html这个文件夹内寻找相应的文件。

index:当没有指定主页时,默认会选择这个指定的文件,它可以有多个,并按顺序来加载,如果第一个不存在,则找第二个,依此类推。

除了这些配置,我们再补充一个配置

proxy_pass,它表示代理路径,相当于转发,而不像之前说的root必须指定一个文件夹。

那么现在我们修改一下配置文件,如下:

location / { 
  proxy_pass http://localhost:8080;
}

然后我们让Nginx重新加载配置文件,回到Nginx根目录执行nginx -s reload命令就可以了。

然后我们再重新打开Nginx的页面,小伙伴们,是不是发现它已经打开了Tomcat页面呢。

实现负载均衡的配置

刚刚我们已经实现了请求的反向代理,从Nginx转发到了Tomcat上,那么如何配置可以实现一个Tomcat的负载均衡集群呢,其实也是很容易的。

配置如下:

upstream localtomcat { 
  server localhost:8080; 
} 
 
server{ 
    location / { 
      proxy_pass http://localtomcat; 
    } 
    #......其他省略 
}

小伙伴们,划重点了,这里一定要注意。upstream后的名字一定不要带下划线,Nginx是不认下划线的,会导致转发异常。

那么如何添加新的tomcat实现负载均衡呢?

我们修改端口,新打开一个tomcat服务器,端口为8081,然后增加配置如下:

upstream localtomcat { 
  server localhost:8080; 
  server localhost:8081; 
}

再重新加载Nginx的配置文件,你会发现,负载均衡已经实现了,现在会向两台tomcat转发请求了。

而且我们可以设置weight=数字来指定每个tomcat的权重,数字越大,表明请求到的机会越大。

配置如下:

upstream localtomcat { 
  server localhost:8080 weight=1; 
  server localhost:8081 weight=5; 
}

总结

好了,到这里我们已经在Windows下搭建好了Nginx+Tomcat的负载均衡集群。

王子今天的分享就到这里了,欢迎小伙伴们继续关注后续文章。

以上就是Windows下使用Nginx+Tomcat做负载均衡的完整步骤的详细内容,更多关于Nginx+Tomcat做负载均衡的资料请关注三水点靠木其它相关文章!

Servers 相关文章推荐
Centos7.7 64位利用本地完整安装包安装lnmp/lamp套件教程
Mar 09 Servers
Apache站点配置SSL强制跳转443
Mar 09 Servers
使用nginx动态转换图片大小生成缩略图
Mar 31 Servers
Nginx配置并兼容HTTP实现代码解析
Mar 31 Servers
windows下快速安装nginx并配置开机自启动的方法
May 11 Servers
JVM上高性能数据格式库包Apache Arrow入门和架构详解(Gkatziouras)
May 26 Servers
Nginx 匹配方式
May 15 Servers
基于docker安装zabbix的详细教程
Jun 05 Servers
nginx代理实现静态资源访问的示例代码
Jul 07 Servers
kubernetes集群搭建Zabbix监控平台的详细过程
Jul 07 Servers
win10搭建配置ftp服务器的方法
Aug 05 Servers
nginx sticky实现基于cookie负载均衡示例详解
Dec 24 Servers
阿里云Nginx配置https实现域名访问项目(图文教程)
详解Nginx 工作原理
fastdfs+nginx集群搭建的实现
Nginx域名转发https访问的实现
Mar 31 #Servers
Nginx本地目录映射实现代码实例
Mar 31 #Servers
nginx 防盗链防爬虫配置详解
Mar 31 #Servers
Nginx服务器如何设置url链接
You might like
咖啡产品发展的三大浪潮
2021/03/04 咖啡文化
通过对php一些服务器端特性的配置加强php的安全
2006/10/09 PHP
PHP设计模式之命令模式的深入解析
2013/06/13 PHP
PHP实现图片上传并压缩
2015/12/22 PHP
js操作二级联动实现代码
2010/07/27 Javascript
js跨浏览器的事件侦听器和事件对象的使用方法
2015/12/17 Javascript
使用PHP+JavaScript将HTML页面转换为图片的实例分享
2016/04/18 Javascript
JS Canvas定时器模拟动态加载动画
2016/09/17 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
node.js报错:Cannot find module 'ejs'的解决办法
2016/12/14 Javascript
servlet+jquery实现文件上传进度条示例代码
2017/01/25 Javascript
jQuery插件FusionCharts实现的3D柱状图效果实例【附demo源码下载】
2017/03/03 Javascript
ECharts地图绘制和钻取简易接口详解
2019/07/12 Javascript
详解React 元素渲染
2020/07/07 Javascript
vue移动端写的拖拽功能示例代码
2020/09/09 Javascript
vue从后台渲染文章列表以及根据id跳转文章详情详解
2020/12/14 Vue.js
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
python虚拟环境virtualenv的使用教程
2017/10/20 Python
Python编程使用*解包和itertools.product()求笛卡尔积的方法
2017/12/18 Python
python远程连接MySQL数据库
2019/04/19 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
修改 CentOS 6.x 上默认Python的方法
2019/09/06 Python
keras自定义回调函数查看训练的loss和accuracy方式
2020/05/23 Python
用python监控服务器的cpu,磁盘空间,内存,超过邮件报警
2021/01/29 Python
css3 transform 3d 使用css3创建动态3d立方体(html5实践)
2013/01/06 HTML / CSS
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
戴尔英国翻新电脑和电子产品:Dell UK Refurbished Computers
2019/07/30 全球购物
印刷工程专业应届生求职信
2013/09/29 职场文书
总务岗位职责
2013/11/19 职场文书
领导干部廉政承诺书
2014/03/27 职场文书
村干部承诺书
2014/03/28 职场文书
司法建议书范文
2014/05/13 职场文书
客运企业隐患排查工作方案
2014/06/06 职场文书
2014年作风建设心得体会
2014/10/22 职场文书
2014年后勤工作总结范文
2014/12/16 职场文书
2015年世界急救日宣传活动方案
2015/05/06 职场文书