title: 02.Tomcat2000并发优化配置 CreateTime: 2017-01-10 17:12:00 UpdateTime: 2017-01-10 17:12:00 CategoryName: web --- --- title: "02.Tomcat2000并发优化配置" date: 2017-01-10T17:12:00+08:00 draft: false tags: ["web"] categories: ["web"] author: "springrain" --- ## 1.参考资料 https://blog.csdn.net/Petershusheng/article/details/56666194 https://blog.csdn.net/petershusheng/article/details/68491874 ## 2. 安装配置JDK 卸载默认安装的openjdk【有的操作系统默认安装有openjdk】 查看java版本:java -version 检查jdk安装包:rpm -qa | grep jdk 卸载已安装的openjdk:yum remove Name(上面命令的输出结果) 查看java版本,是否卸载成功:java -version ![jdk](/public/02/02-tomcat-install-centos-01.jpg) ![jdk](/public/02/02-tomcat-install-centos-02.jpg) 从oracle官网下载 JDK jdk-8u131-linux-x64.rpm 安装jdk ```shell rpm -ivh jdk-8u131-linux-x64.rpm ``` ![jdk](/public/02/02-tomcat-install-centos-03.jpg) 修改 vi /etc/profile 在最下面添加一下环境变量 ```shell export JAVA_HOME=/usr/java/jdk1.8.0_131 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar #环境变量立即启效 source /etc/profile ``` ## ~~~3. 使用ROOT权限运行~~~ 下载解压,直接使用ROOT权限进行运行,比较简单方便 CentOS 7 上的服务脚本例子如下: /lib/systemd/system/tomcat1 [tomcat1.service](/public/02/tomcat1.service) ## 4. 使用守护进程运行 ### 下载编译tomcat 进入目标目录: cd /usr/local/ 下载tomcat压缩包: https://tomcat.apache.org/download-80.cgi#8.5.24 ```shell #解压 tar -zxvf apache-tomcat-8.5.24.gz #重命名为tomcat mv apache-tomcat-8.5.24 tomcat #进入bin目录 cd tomcat/bin/ #解压本地化脚本: tar -zxvf commons-daemon-native.tar.gz #进入脚本目录 cd commons-daemon-1.1.0-native-src/unix #运行检查 ./configure #运行编译: make #拷贝编译脚本: cp -rf jsvc /usr/local/tomcat/bin/daemon.sh ### 建立tomcat用户 useradd tomcat -M -d /usr/local/tomcat -s /usr/sbin/nologin ``` ### 修改启动脚本 vi /usr/local/tomcat/bin/daemon.sh 在文件顶部加入 ```shell #chkconfig: 234 20 80 # description: Tomcat daemon # processname: tomcat JAVA_HOME=/usr/java/jdk1.8.0_131 export LC_ALL="zh_CN.UTF­8" TOMCAT_USER=tomcat ``` ![jdk](/public/02/02-tomcat-install-centos-04.jpg) 根据情况修改 JAVA_OPTS= 的值,一般是: ``` #sun.jnu.encoding 影响文件名,file.encoding 文件内容,避免乱码 JAVA_OPTS="-Xms1024m -Xmx2014m -XX:PermSize=512m -XX:MaxNewSize=1024m -XX:MaxPermSize=1024m -Dlog4j.index=0 -Dfile.encoding=utf-8 -Dsun.jnu.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom" ``` 在stop命令退出之前清空work目录 ```shell rm -rf /usr/local/tomcat/work/* ``` ![jdk](/public/02/02-tomcat-install-centos-05.jpg) ### 注册为服务 ```shell ln -s /usr/local/tomcat/bin/daemon.sh /etc/init.d/tomcat chkconfig --add tomcat chkconfig tomcat on #测试 service tomcat stop service tomcat start ``` ### 修改配置文件 删除所有的默认项目 ```shell rm -rf /usr/local/tomcat/webapps/* ``` **[下载 config/server.xml配置示例](/public/02/server.xml)** 如果只使用freemarker,建议禁用jsp解析,防止jsp文件上传upload文件夹tomcat自动解析. config/web.xml 注释掉jsp的servlet 和 servlet-mapping ![web.xml](/public/02/02-tomcat-install-centos-06.jpg) 修改catalina.properties ,跳过所有的jar包检查,加快启动速度 tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar 禁用session在 manager中设置: maxActiveSessions="0" 或者在context.xml中全局设置maxActiveSessions="0" ### 修改目录权限 ```shell chown -R tomcat:tomcat /usr/local/tomcat chmod 755 /usr/local/tomcat/bin/*.sh ```