- 确定服务器内存
- Windows系统直接在文档系统中查看
- Linux系统使用命令查看
[root@localhost ~]# free 参数说明: Mem:内存的使用信息 Swap:交换空间的使用信息 total:总计物理内存的大小 used:已使用物理内存 free:可用物理内存 shared:多个进程共享的内存总额 buffers/cached:缓存缓冲使用物理内存大小 available:还可以被应用程序使用的物理内存大小
- 根据可用内存修改配置文件【apache-tomcat-HOMEbincatalina.sh】
- 配置样例
内存设置说明:
堆内存设置:
-Xms 初始堆大小。如:-Xms256m或2G,默认为物理内存1/64。
-Xmx 最大堆大小。如:-Xmx512m或2G,默认为物理内存1/4。
非堆内存设置:
-XX:PermSize 永久代(方法区)的初始大小,默认为物理内存1/64。
-XX:MaxPermSize 永久代(方法区)的最大值,默认为物理内存1/4。
Tomcat时区设置
场景:服务器时间问题,会导致某些对时效性要求较高或定时任务等,受到不可估量的影响,需重视
- 修改配置文件【apache-tomcat-HOMEbincatalina.sh】
- 配置样例
配置方式不唯一,可直接设置时区:
Duser.timezone=GMT+08
场景:一般情况,程序中会使用log4j日志插件处理系统日志,但是,在某些情况下,依旧需要使用Tomcat自带的日志排查问题,Tomcat日志只记录一个,文件会非常大,因此,需要对Tomcat的日志进行分割,方便跟踪
- 参考方案
使用cronolog - 安装cronolog
/data/soft/cronolog-master ln -s configure.ac bootstrap ./configure --prefix=/data/cronolog make make install - 具体配置
org.apache.catalina.startup.Bootstrap "$@" start 2>&1 | /data/cronolog/sbin/cronolog /data/tomcat/apache-tomcat-8.5.65/logs/catalina.%Y-%m-%d.out >> /dev/null &
- 测试
目录下出现此类文件,即测试通过
【apache-tomcat-HOMElogscatalina.2011-11-07.out】
推荐使用Druid、BoneCP
- 确认Tomcat使用的连接池版本
Tomcat7以前使用的都是DBCP1,以后都使用DBCP2
- 修改配置文件
参数说明
databaseConnection
jdbc/otmsweb
javax.sql.DataSource
Container
参数说明
参数基本固定,只需要修改中连接池名称与context.xml中一致即可
企业项目中,对于暴露的配置信息最为忌讳,存在安全问题,所以需要对敏感信息进行加密
- 编写加解密程序
// 思路如下
// 1、编写加解密工具类,可使用主流加密方式,亦可自己设计
// 2、重写dbcp加载配置类,填充用户密码时,调用解密方法
// org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory
// 加密工程如下:https://download.csdn.net/download/smilecold/86176894
- 放置到【apache-tomcat-HOMElib】下
- 修改连接池配置文件,用户、密码信息替换为密文,并修改加载配置类
运行工程(注意打包时指定main入口)加密用户密码
factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory"
常见报错
- 驱动找不到
将驱动包添加到【apache-tomcat-HOMElib】下 - 报错IllegalArgumentException: The AJP Connector is configured with secretRequired=“true” but the secret
具体问题,具体分析,善看日志!
暑期编程PK赛 得CSDN机械键盘等精美礼品!


