• nginx实现tomcat负载均衡


    配置环境:

    最少两台tomcat服务器和一台nginx服务器

    先来配置tomcat服务器1,在安装了tomcat服务的基础上

    1.首先在根目录下建立一个web目录,并在里边建立一个webapp目录,用于存放网站文件

    mkdir -pv /web/webapp

    2.在webapp目录下建立一个index.jsp的测试页面

    vim /web/webapp/index.jsp

     添加内容:

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
    <html>
    <head>
    <title>JSP test page</title>
    </head>
    <body>
    <%out.println("Welcome come to test site,http://wwww.test1.com");%>
    </body>
    </html>

    3.修改tomcat的server.xml文件

    定义一个虚拟主机,并将网页文件路径指向已经建立的/web/webapp,在host段增加context段

    cd /usr/local/tomcat8/conf/

    cp server.xml server.xml.bak

    vim server.xml

    150行添加内容:

    <Context docBass="/web/webapp" path="" reloadable="flase">

    </Context>

    4.重启服务

    /usr/local/tomcat8/bin/shutdown.sh

    /usr/local/tomcat8/bin/startup.sh

    5.进入网页进行测试

    IP地址后跟端口号:8080

    6.查看文件日志

    ls /usr/local/tomcat/logs/

    tomcat服务器2,同1配置一样,只有在主配置文件中的网页不同

    ===========================================================

     

    接下来在安装了nginx服务的基础上配置nginx服务器

    1.修改配置文件

    vim /usr/local/nginx/conf/nginx.conf

    添加内容:

    在keepalive timeout 65下

    定义一个资源池:

    upstream tomcat_server {

    server 192.168.200.112:8080 weight=1;

    server 192.168.200.113:8080 weight=1;  

    }

    weight表示权重,能力越大,权重越大

    **负载均衡调度状态:

    down  表示当前server不参与负载

    backup  预留的备用机器,压力小

    max_fails  允许请求失败的次数

    fail_timeout  请求失败超时时间,在经历max_fails后,暂停服务

    在一个location下

    location ~.jsp$ {

    proxy_pass http://tomcat_server;

    proxy_set_header Host $http_host;

    }

    2.创建一个软连接

    ln -s /usr/local/nginx/sbin/nginx /usr/sbin/

    3.起服务

    killall -HUP nginx

    注:如果后端服务器设置有类似防盗链或者根据http请求头中的host字段来进行路由或判断功能的话,如果反向代理层的nginx不重写请求头中的host字段,将会导致请求失败,报400错误。

  • 相关阅读:
    Mysql学习总结(19)——Mysql无法创建外键的原因
    Java Web学习总结(21)——http协议响应状态码大全以及常用状态码
    Java Web学习总结(21)——http协议响应状态码大全以及常用状态码
    Tomcat学习总结(5)——Tomcat容器管理安全的几种验证方式
    Android学习总结(1)——好的 Android 开发习惯
    phabricator
    linux-kernel 学习计划
    【华为云技术分享】Linux内核编程环境 (1)
    7 分钟全面了解位运算
    【华为云技术分享】鲲鹏弹性云服务器GCC交叉编译环境搭建指南
  • 原文地址:https://www.cnblogs.com/990114-jhc/p/11557839.html
Copyright © 2020-2023  润新知