配置tomcat多实例

首先声明,我不打算将tomcat copy两份,而是利用catalina_base来创建tomcat的多实例。下载tomcat后,解压,然后在同级目录新建文件夹apache-tomcat-cluster ,然后新建文件夹tomcat-9990 ,copy tomcat安装目录的conf文件夹到此目录,修改server.xml,一共修改3处地方,只改port值。

<Server port="8025" shutdown="SHUTDOWN">
<Connector connectionTimeout="20000" port="9990" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector port="9019" protocol="AJP/1.3" redirectPort="8443"/>

新建temp、webapps文件,并在webapps文件夹中放入一个简单的hello工程,

tomcat nginx 负载均衡_负载均衡

a.html的内容

<!DOCTYPE html>
<html>
    <head>
        <title>hello world1</title>
    </head>

    <body>
        <h1>hello world1</h1>
    </body>
</html>

新建脚本tomcat_instance_9990_start.bat,启动tomcat,内容如下

@echo off
set JAVA_HOME=%JAVA_HOME%
set PATH=%JAVA_HOME%\bin;%PATH%
set CATALINA_BASE=%CD%
cd ../../apache-tomcat-7.0.52/bin
catalina.bat start

完整的目录如下

tomcat nginx 负载均衡_tomcat_02

然后将tomcat-9990 复制一份,取名 tomcat-9991 并修改server.xml中的3处端口。将a.html中的helloworld改为hello world2

tomcat nginx 负载均衡_tomcat_03

配置nginx,负载均衡

下载nginx,解压,修改nginx_home/conf/nginx.conf,添加配置

upstream  mycloud.com {  #服务器集群名字   
    server    127.0.0.1:9990  weight=1;#这里的端口号与tomcat对应
    server    127.0.0.1:9991  weight=2;  
}

tomcat nginx 负载均衡_负载均衡_04

proxy_pass http://mycloud.com;

tomcat nginx 负载均衡_tomcat_05

在命令行下进入nginx安装目录,执行start nginx 否则直接点击nginx.exe会一闪而过。

点击nginx_home/nginx.exe启动nginx,访问localhost/hello/a.html,请求就随机访问了

tomcat nginx 负载均衡_负载均衡_06

启动nginx命令start nginx
停止nginx命令nginx -s quit