Tomcat的虚拟机主机配置与优化配置(理论实践!)
发表于:2025-02-09 作者:千家信息网编辑
千家信息网最后更新 2025年02月09日,Tomcat虚拟主机配置某些时候公司有多个项目同时运行时,一台服务器不建议运行多个Tomcat服务,需要配置虚拟主机通过两个域名访问到不同的项目内容步骤:1.创建www和bbs项目 目录和文件2.修改
千家信息网最后更新 2025年02月09日Tomcat的虚拟机主机配置与优化配置(理论实践!)
Tomcat虚拟主机配置
某些时候公司有多个项目同时运行时,一台服务器不建议运行多个Tomcat服务,需要配置虚拟主机
通过两个域名访问到不同的项目内容
步骤:
1.创建www和bbs项目 目录和文件
2.修改Tomcat主配置文件
3.重启Tomcat服务
4.测试
Tomcat优化
Tomcat 的缺省配置并不适合生产环境,它会频繁出现假死现象需要重启,只有通过不断压测优化才能让它最高效率稳定的运行。优化主要有三方面,分为操作系统优化(内核参数优化),Tomcat 配置文件参数优化,Java 虚拟机(JVM)调优。
Tomcat常用的优化相关参数
【maxThreads】Tomcat 使用线程来处理接收的每个请求,这个值表示 Tomcat 可创建的最大的线程数,默认值是 200。【minSpareThreads】最小空闲线程数,Tomcat 启动时的初始化的线程数,表示即使没有人使用也开这么多空线程等待,默认值是 10【maxSpareThreads】最大备用线程数,一旦创建的线程超过这个值,Tomcat 就会关闭不再需要的 socket 线程。默认值是-1(无限制)。一般不需要指定【URIEncoding】指定 Tomcat 容器的 URL 编码格式,语言编码格式这块倒不如其它 Web服务器软件配置方便,需要分别指定【connnectionTimeout】网络连接超时,单位:毫秒,设置为 0 表示永不超时,这样设置有隐患的。通常默认 20000 毫秒就可以【enableLookups】是否反查域名,以返回远程主机的主机名,取值为:true 或 false,如果设置为 false,则直接返回 IP 地址,为了提高处理能力,应设置为 false。【disableUploadTimeout】上传时是否使用超时机制。应设置为 true。【connectionUploadTimeout】上传超时时间,毕竟文件上传可能需要消耗更多的时间,这个根据你自己的业务需要自己调,以使 Servlet 有较长的时间来完成它的执行,需要与上一个参数一起配合使用才会生效【acceptCount】指定当所有可以使用的处理请求的线程数都被使用时,可传入连接请求的最大队列长度,超过这个数的请求将不予处理,默认为 100 个。【compression】是否对响应的数据进行 GZIP 压缩,off:表示禁止压缩;on:表示允许压缩(文本将被压缩)、force:表示所有情况下都进行压缩,默认值为 off,压缩数据后可以有效的减少页面的大小,一般可以减小 1/3 左右,节省带宽【compressionMinSize】表示压缩响应的最小值,只有当响应报文大小大于这个值的时候才会对报文进行压缩,如果开启了压缩功能,默认值就是 2048【compressableMimeType】压缩类型,指定对哪些类型的文件进行数据压缩。【noCompressionUserAgents="gozilla, traviata"】对于以下的浏览器,不启用压缩如果已经对代码进行了动静分离,静态页面和图片等数据就不需要 Tomcat 处理了,那么也就不需要在 Tomcat 中配置压缩了。因为这里只有一台 Tomcat 服务器,而且压测的是Tomcat 首页,会有图片和静态资源文件,所以这里启用压缩
实例演示
第一步:安装配置域名解析服务
[root@localhost ~]# yum install bind -y[root@localhost ~]# vim /etc/named.conf listen-on port 53 { any; }; ...allow-query { any; };[root@localhost ~]# vim /etc/named.rfc1912.zones zone "kgc.com" IN { type master; file "kgc.com.zone"; allow-update { none; };}; zone "accp.com" IN { type master; file "accp.com.zone"; allow-update { none; };};[root@localhost ~]# cd /var/named/[root@localhost named]# cp -p named.localhost kgc.com.zone[root@localhost named]# vim kgc.com.zone$TTL 1D@ IN SOA @ rname.invalid. ( 0 ; serial 1D ; refresh 1H ; retry 1W ; expire 3H ) ; minimum NS @ A 127.0.0.1www IN A 192.168.235.158[root@localhost named]# cp -p kgc.com.zone accp.com.zone#复制kgc文件并改名为accp文件,不做修改[root@localhost named]# systemctl start named#启动域名解析服务[root@localhost named]# systemctl stop firewalld.service [root@localhost named]# setenforce 0#关闭防火墙与增强型安全功能
第二步:创建 kgc 和 accp 项目目录和文件
[root@localhost named]# mkdir /usr/local/tomcat/webapps/kgc#创建kgc站点目录[root@localhost named]# echo "This is kgc web" > /usr/local/tomcat/webapps/kgc/index.jsp#编辑kgc首页[root@localhost named]# mkdir /usr/local/tomcat/webapps/accp[root@localhost named]# echo "This is accp web" > /usr/local/tomcat/webapps/accp/index.jsp
第三步:修改 Tomcat 主配置文件server.xml
[root@localhost named]# vim /usr/local/tomcat/conf/server.xml #定义www.kgc.com虚拟主机配置 #关闭xml命名空间 #指定path默认加载的类与reloadable监视类的开启 #注意标签收尾 #定义www.accp.com虚拟主机配置 [root@localhost named]# shutdown.sh #关闭Using CATALINA_BASE: /usr/local/tomcatUsing CATALINA_HOME: /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME: /usr/java/jdk1.8.0_201-amd64Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar[root@localhost named]# startup.sh #开启Tomcat服务Using CATALINA_BASE: /usr/local/tomcatUsing CATALINA_HOME: /usr/local/tomcatUsing CATALINA_TMPDIR: /usr/local/tomcat/tempUsing JRE_HOME: /usr/java/jdk1.8.0_201-amd64Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jarTomcat started.
第四步:浏览测试网页
1.使用浏览器访问 http://www.kgc.com:8080 页面显示This is kgc web
2.使用浏览器访问 http://www.accp.com:8080 页面显示This is accp web
第五步:优化Tomcat
1.未优化前使用apache-jmeter先压测一下
2.修改主配置文件server.xml
[root@localhost ~]# vim /usr/local/tomcat/conf/server.xml #支持的压缩类型
3.再次压测优化后的Tomcat
谢谢阅读!!!
配置
文件
线程
服务
主机
处理
参数
域名
数据
虚拟主机
页面
项目
浏览
最大
只有
时间
服务器
浏览器
目录
类型
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
拓新公司是一家软件开发企业
pcu软件开发工具链简介
软件开发技术架构分类
视频数据库方案
江西信息软件开发优势
公司软件开发税务
学生数据库课程设计题目
新村乡软件开发培训
江苏人工智能软件开发有用吗
ats 数据库 图书馆
有权力启动和关闭数据库
pps服务器未响应
我的世界服务器怎么重置
网络安全和信息化培训课程
客户端调用服务器上的函数
互联网游戏算科技类股吗
当年侵入腾讯服务器少年
上海市场计算机网络技术服务系统
重大事件网络安全保障工作方案
益德网络技术
戴尔服务器最大内存
中国服务器市场追踪报告
数据库的方案和符号库分别指什么
网关服务器英文简称
哪个领域的软件开发好
赌博软件开发教程视频
带算力的服务器
思科刀片服务器 机头
论述软件开发的过程
市直机关网络安全自查报告