nginx与tomcat长连接(Windows下使用Nginx+Tomcat做负载均衡的完整步骤)
nginx与tomcat长连接
Windows下使用Nginx+Tomcat做负载均衡的完整步骤前言
今天,王子与大家闲谈一下如何在Windows下使用Nginx+Tomcat做负载均衡的完整步骤,小伙伴们可以试着自己动手实践一下哦。
另外说明一点,本篇文章是纯实操文章,不涉及太多原理的解读,后期可能单独开一个专栏来深入讨论Nginx的原理。
好了那我们直接开始。
下载Nginx
首先我们去官网下载一个Windows稳定版本的Nginx,官网地址:http://nginx.org/en/download.html
下载后解压到想要的位置,小伙伴们要注意了,千万不要把它解压到带有中文的文件夹下,会导致不能启动的。
Window上的启动非常简单,我们只要进入文件夹,双击nginx.exe就可以直接启动了
nginx的默认端口是80端口,由于王子电脑上的80端口被ISS占用,所以我们修改一下端口,改成81端口。
修改端口也很容易,直接进入conf文件夹,打开nginx.conf文件,修改如下位置即可:
修改后,我们直接双击就可以启动Nginx服务了,你会看到一个一闪而过的命令窗口,不用在意,其实已经启动成功了,我们在浏览器输入http://localhost:81/,就可以看到Nginx的启动页面了。
这样我们的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做负载均衡的资料请关注开心学习网其它相关文章!
- linux系统查看nginx系统版本(Linux中Nginx的防盗链和优化的实现代码)
- nginx学习需要哪些知识(一篇文章搞懂Nginx是什么,能干什么)
- nginx为什么要配置https(Nginx配置Https安全认证的实现)
- linuxnginx常用状态命令(nginx常用命令放入shell脚本详解)
- 服务器启动nginx服务的命令(Nginx服务器添加Systemd自定义服务过程解析)
- python配合docker(Docker构建python Flask+ nginx+uwsgi容器)
- nginx 根据url限流(浅谈Nginx 中的两种限流方式)
- nginx事件模型有几种(Python实现监控Nginx配置文件的不同并发送邮件报警功能示例)
- tomcat docker 性能(Docker Nginx容器和Tomcat容器实现负载均衡与动静分离操作)
- zabbix5.0源码安装(nginx的zabbix 5.0安装部署的方法步骤)
- nginx配置文件位置(查看nginx配置文件路径和资源文件路径的方法)
- nginx代理转发域名(Nginx域名转发使用场景代码实例)
- docker nginx 配置详解(Docker 如何安装 Nginx)
- nginx安全配置提示(wdcp Linux面板nginx启用gzip后js未压缩解决方案)
- nginx配置静态资源路径(Mac环境Nginx配置和访问本地静态资源的实现)
- nginx代理docker容器(Docker Nginx容器制作部署实现方法)
- 红色代表什么(红色代表什么意义和象征)
- 菲律宾安全吗(菲律宾安全吗2023)
- 彩礼重要吗()
- 写信告诉我今天海是什么颜色(写信告诉我今天海是什么颜色回答)
- 英语难学吗(法语比英语难学吗)
- 今天要吃什么(今天要吃什么菜好)
热门推荐
- docker pull 更新本地镜像(Docker 拉取镜像及标签操作 pull | tag)
- win7安装安卓模拟器(腾讯云服务器怎么安装安卓模拟器 可以安装安卓模拟器吗)
- css3字体怎么写(css3个性化字体_动力节点Java学院整理)
- js的showModalDialog的用法
- 用php递归函数实现阶乘的计算(php求斐波那契数的两种实现方式递归与递推)
- html5列表与布局(HTML5逐步分析实现拖放功能的方法)
- javascript的执行顺序
- sql server2005如何配置(SQLServer2005创建定时作业任务)
- 阿里云mysql配置升级注意事项(详解如何在阿里云上安装mysql)
- 云服务器租用应该注意哪些事项(云服务器托管需要注意的细节)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9