在这里简单记录一下,我使用Nginx反向代理进行负载均衡,将请求发送到两台tomcat上。

首先解压两个tomcat,解压Nginx,一台tomcat配置可以不用动,但是我为了更方便只是将它的端口改为91:

<Connector port="91" protocol="HTTP/1.1"  connectionTimeout="20000" redirectPort="8443" />

并在这个tomcat的默认index.jsp中加一句话 I am tomcat1:

<div id="congrats" class="curved container">
<h2>If you're seeing this, you've successfully installed Tomcat. Congratulations! I am tomcat1</h2>
</div>

输入http://localhost:91可以正常看到如下界面这台tomcat算是起开了。

另一台tomcat就需要多处改动了,不过也就是将所有的redirectPort和port改为没有使用的端口,不然就会因为端口被占用而起不开了,因为本地已经有一个tomcat在运行了。这里我贴一个摘出来的tomcat的server.xml修改处配置:

<Server port="8006" shutdown="SHUTDOWN">

<Connector port="92" protocol="HTTP/1.1" connectionTimeout="20000"
redirectPort="8450" /> <Connector port="8010" protocol="AJP/1.3" redirectPort="8450" />

没错,这个tomcat我修改为92端口,同时修改tomcat的默认主页,添加一句“I am tomcat2“。ok,输入http://localhost:92可以正常访问

最后来配置Nginx配置文件conf/Nginx.conf,在location元素下配置个proxy_pass:

location元素后面的表达式支持正则匹配,这里使用/表明所有以此符号结尾的请求都会进这个location中,我们可以在server中配置多个location,它们之间根据先后顺序进行匹配,前面匹配到后面的就不会再匹配了。在这里,所有进来的请求代理到http://test  ,这个test在upsteam元素配置,我们可以在upstream中配置多个server,这两个server正是两台tomcat的地址,运行Nginx,输入http://localhost即可完成反向代理。不断刷新可以看到两个tomcat的主页在来回切换。

ps:如果在测试的时候,修改配置文件并重启Nginx并不起效,可以去看看任务管理器的详细信息里是不是有多个Nginx在运行,默认情况下,只有两个Nginx服务。

常见Nginx命令(进入到Nginx安装目录下执行命令):

start nginx        启动nginx
nginx -s stop 快速关闭Nginx,可能不保存相关信息。
nginx -s quit 平稳关闭Nginx,保存相关信息。
nginx -s reload 重新加载nginx。
nginx -v 显示 nginx 的版本。
nginx -t 检查配置文件是否正确,修改配置文件之后建议先使用该命令检查一下。

使用nginx反向代理进行负载均衡的更多相关文章

  1. Nginx反向代理,负载均衡,redis session共享,keepalived高可用

    相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tomcat服务器两台,由nginx进行反向代理和负载均衡,此 ...

  2. nginx反向代理与负载均衡

    一:nginx反向代理与负载均衡配置思路与用法 1.nginx反向代理:就是你去相亲时,媒婆就是这里的代理,让媒婆带你去见姑娘 2.nginx负载均衡:就是有很多的媒婆经过商量给你选出最适合你的姑娘, ...

  3. 【转】Nginx反向代理和负载均衡

    原文链接:http://www.cnblogs.com/shuoer/p/7820899.html Nginx反向代理和负载均衡 环境说明 由于我使用的是windows系统,所以我用虚拟机虚拟出来了3 ...

  4. 谁说前端不需要懂-Nginx反向代理与负载均衡

    转:https://juejin.im/post/5b01336af265da0b8a67e5c9 学到老活到老 前端圈一直很新,一直要不停的学习,而且在进入大厂的路上,还要求熟悉一门后台语言等等.用 ...

  5. [转]Nginx反向代理和负载均衡部署指南

    Nginx反向代理和负载均衡部署指南   1.        安装 1)         从Nginx官网下载页面(http://nginx.org/en/download.html)下载Nginx最 ...

  6. 基于Nginx反向代理及负载均衡

    基于Nginx反向代理及负载均衡 参考:http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pass 只要没有被启用,默认就是 ...

  7. (二)Nginx反向代理与负载均衡的实现

    引言:nginx正向代理与反向代理在上一篇文章中已经谈论过,这里狗尾草主要告诉大家Nginx对前端的小伙伴来说在工作中如何简单的使用. 1.0什么是反向代理 当我们有一个服务器集群,并且服务器集群中的 ...

  8. Nginx反向代理、负载均衡及日志

    Nginx反向代理.负载均衡及日志 1.原理图   2.正向代理与反向代理 (1)代理服务器 代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后 ...

  9. Nginx反向代理与负载均衡应用实践(二)

    Nginx反向代理与负载均衡应用实践(二) 链接:https://pan.baidu.com/s/1xB20bnuanh0Avs4kwRpSXQ 提取码:migq 复制这段内容后打开百度网盘手机App ...

随机推荐

  1. 微信小程序自定义tabbar的问题

    个人感觉小程序的tab样式自定义的能力有所欠缺,不够美观,于是今天自己diy了一个tab 测试的时候发现,无论是使用navigator跳转(会出现点击的效果)还是用bindtap(触摸),因为没有定义 ...

  2. React-Native进阶_1.抽取样式和组件

    组织应用的样式和组件 就像抽取工具类一样,放在单独的文件中,在要使用的地方去导入调用即可. 1.导出样式 Style 样式可以单独写在一个JavaScript文件中,然后导出给其他JavaScript ...

  3. Android逆向之旅---Android中锁屏密码算法解析以及破解方案

    一.前言 最近玩王者荣耀,下载了一个辅助样本,结果被锁机了,当然破解它很简单,这个后面会详细分析这个样本,但是因为这个样本引发出的欲望就是解析Android中锁屏密码算法,然后用一种高效的方式制作锁机 ...

  4. webpack 分析

    编译后 自动打开浏览器 可视 //npm install --save-dev webpack-bundle-analyzer //webpack.base.conf.js const BundleA ...

  5. asp.net 输入框在chrome中无法关闭自动提示

    将asp:TextBox 的属性AutoCompleteType设为Disabled,希望在chrome中点击记住用户名密码后输入框不再自动提示,但不起作用. 解决方法: <asp:TextBo ...

  6. Makefile中怎么使用Shell if判断

    /********************************************************************* * Makefile中怎么使用Shell if判断 * 说 ...

  7. linux中的网络基础

    ifconfig -a 查看所有网口ifconfig eth 查看具体网口 ifup ethoifdown etho 网卡配置文件/etc/sysconfig/networkk-scripts/ifc ...

  8. NOI 模拟赛

    T1 Article 给 $m$ 个好串,定义一个字符串分割方案是好的当且仅当它分割出来的子串中"是好串的子串"的串长占原串串长超过 85%,定义一个好的分割方案的权值为这种分割方 ...

  9. 常用输入法快速输入自定义格式的时间和日期(搜狗/QQ/微软拼音)

    几个主流的输入法输入 rq 或者 sj 都可以得到预定义格式的日期或者时间.然而他们都是预定义的格式:当我们需要一些其他格式的时候该怎么做呢? 本文将介绍几个常用输入法自定义时间和日期格式的方法. 主 ...

  10. .NET 中各种混淆(Obfuscation)的含义、原理、实际效果和不同级别的差异(使用 SmartAssembly)

    长文预警!!! UWP 程序有 .NET Native 可以将程序集编译为本机代码,逆向的难度会大很多:而基于 .NET Framework 和 .NET Core 的程序却没有 .NET Nativ ...