• 使用Nginx反向代理进行负载均衡


    在这里简单记录一下,我使用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 检查配置文件是否正确,修改配置文件之后建议先使用该命令检查一下。
  • 相关阅读:
    jqeuery $.ajax 与后台jsone交互
    SpringMVC3.2+JPA使用注解的方式环境搭建
    SpringMVC+JPA使用注入的方式环境搭建
    EasyUI_tree根据数据库数据生成树形结构JSON格式
    ACM竞赛高手比其他程序员水平高很多吗?
    hdu 1028 Ignatius and the Princess III(DP)
    9513 防空洞
    hdu 1398 Square Coins(简单dp)
    FZU 1608 Huge Mission(线段树)
    poj2528 Mayor's posters(线段树之成段更新)
  • 原文地址:https://www.cnblogs.com/lz2017/p/8867634.html
Copyright © 2020-2023  润新知