#tomcat--配置多个tomcat服务器(tomcat集群)

本文详细介绍了如何安装配置JDK和Tomcat,包括环境变量设置、服务安装与管理,以及针对Tomcat的性能优化策略,如内存设置、线程池配置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装jdk
下载jdk1.8,安装jdk程序。
1、设置JAVA_HOME
为什么是设置JAVA_HOME?可以减少path环境变量的配置操作,二是归一原则, 当JDK路径改变的时候, 仅需更改JAVA_HOME的变量值即可,三是第三方软件会引用约定好的JAVA_HOME变量, 不然, 你不能正常使用该软件

2、配置path环境变量
为什么需要配置path环境变量呢?因为配置该环境变量后,电脑系统将根据该变量的值找到java编程中需要的一些程序,比如javac.exe、java.exe、javah.exe等等,其中javac.exe程序是用于编译java源代码,java.exe程序是用于执行后缀为class的代码。例如,我们打开dos,就可以直接输入java xxx和javac yyy进行jdk有关的命令操作了。配置如下所示。在Path路径下配置下面的环境变量:
(%JAVA_HOME%/bin)和D:\test\jdk\Java\jre7\bin;

这时候,我们打开dos环境,输入java –version和javac –vserion即可验证jdk是否安装成功:
C:\Users\xxx>java -version
java version “1.7.0_80”
Java™ SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot™ 64-Bit Server VM (build 24.80-b11, mixed mode)

C:\Users\xxx>javac -version
javac 1.7.0_80
3、配置CLASSPATH
为什么要配置classpath变量?配置classpath变量,才能使得java解释器知道到哪里去找标准类库,这些标准类库是别人已经写好了的,我们只管使用。比如我们常用到java.lang包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dt.jar,一个是tools.jar,这两个jar包都位于C:/jdk1.6.0/lib目录下,所以通常我们都会把这两个jar包加到我们的classpath环境变量的值为:.; C:\Program Files\Java\ jdk1.7.0_80\lib\tools.jar; C:\Program Files\Java\ jdk1.7.0_80\lib\dt.jar;

在系统变量中新建CLASSPATH环境变量
变量名:CLASSPATH
变量值:.;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar;
(ps:前面有个 .; 这个是告诉JDK,搜索CLASS时先查找当前目录的CLASS文件 )
配置java_home的原因是:我们写java程序时需要引用已经开发好的类,所以应该让java解释器知道引用的类的位置啊。否则会提示:所引用的类找不到的。CLASSPATH最前面是有个 “.”的,表示当前目录。

经过上面几个步骤,就配置好了一个jdk。

二、配置Tomcat
1、下载tomcat安装包
将tomcat安装包解压到指定目录。

2、配置CATALINA_HOME环境变量
新建CATALINA_HOME环境变量,并配置该环境变量值为tomcat的安装根目录,例如:

说明:不能自定义CATALINA_HOME以外的其他环境变量,否则无法安装tomcat服务!
CATALINA:远程轰炸机

3、安装tomcat服务
打开dos环境,执行service.bat install命令,如果看到The service xxx has been installed.的结果,说明tomcat的xxx服务执行成功:

注意:有些机器可能需要管理员才能执行service.bat install命令,如果我们在执行service.bat install命令时,无法执行该命令,那么可以换用管理员来执行该命令。
4、修改tomcat服务名称
如果需要修改tomcat服务名称,那么可以打开service.bat文件,找到set DISPLAYNAME=服务名称,下面的红色部分就是你需要定义的名称所在的位置:
rem Set default Service name
set SERVICE_NAME=GDFS_Tomcat7
set DISPLAYNAME=Apache Tomcat 7.0 %SERVICE_NAME%
5、指定tomcat删除服务名称
(1)使用SC delete 服务名来删除指定服务名
如果遇到下面的错误:
C:\Users\yx02>SC delete GDFS_Tomcat7
[SC] OpenService 失败 5:
拒绝访问。
那么说明没有权限使用SC delete 服务名来删除指定服务名,解决办法是先使用管理员打开cmd,使用SC delete 服务名来删除指定服务名,这时,我们再次执行上面的命令,就成功了:

(2)使用service.bat remove删除所有的服务名称
C:\Users\yx02>service.bat remove
Removing the service ‘GDFS_Tomcat7’ …
Using CATALINA_BASE: “D:\test\apache-tomcat-7.0.91”
The service ‘GDFS_Tomcat7’ has been removed
6、配置多个tomcat服务
第一步:新建一个CATALINA_HOME_2环境变量,路径为新的tomcat的安装目录

第二步:修改D:\test\apache-tomcat-7.0.91(2)\bin目录下的catalina.bat文件,将CATALINA_HOME统一替换为CATALINA_HOME_2,修改service.bat中的CATALINA_HOME统一替换为CATALINA_HOME_2,修改startup.bat中的CATALINA_HOME统一替换为CATALINA_HOME_2。

第三步:修改多个Tomcat中server.xml的所有端口互不一致。
(注意,如果是企业的升级部署,可直接将server.xml和war包拷贝到最新解压的tomcat目录下,并进行严格测试再执行第三步)
第四步:分别切换到所在tomcat的安装目录目录,执行生成服务名称:service.bat install,生成服务成功。

三、TOMCAT 优化
bin目录下:catalina.bat文件的“rem Suppress Terminate batch job on CTRL+C”这一行下面增加JAVA_OPTS="-server -Xms1G -Xmx2G -Xss256K -Djava.awt.headless=true -Dfile.encoding=utf-8 -XX:MaxPermSize=256m -XX:PermSize=128M -XX:MaxPermSize=256M" 优化GC

conf目录下: service.xml文件 配置

优化线程数->

增加配置:<Connector port=“8080” protocol="HTTP/1.1"connectionTimeout=“20000” redirectPort="8443"acceptCount=“500” maxThreads=“400” />

其中:

• maxThreads:tomcat可用于请求处理的最大线程数,默认是200
• minSpareThreads:tomcat初始线程数,即最小空闲线程数
• maxSpareThreads:tomcat最大空闲线程数,超过的会被关闭
• acceptCount:当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理.默认100

使用线程池->
<Executor name=“tomcatThreadPool” namePrefix="req-exec-"maxThreads=“1000” minSpareThreads="50"maxIdleTime=“60000”/>
<Connector port=“8080” protocol="HTTP/1.1"executor=“tomcatThreadPool”/>

其中:

• namePrefix:线程池中线程的命名前缀
• maxThreads:线程池的最大线程数
• minSpareThreads:线程池的最小空闲线程数
• maxIdleTime:超过最小空闲线程数时,多的线程会等待这个时间长度,然后关闭
• threadPriority:线程优先级

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值