Tomcat配置(dbcp连接池、连接池加密、日志分割)
Tomcat内存设置
- 确定服务器内存
- Windows系统直接在文档系统中查看
- Linux系统使用命令查看
[root@localhost ~]# free参数说明:Mem:内存的使用信息Swap:交换空间的使用信息total:总计物理内存的大小used:已使用物理内存free:可用物理内存shared:多个进程共享的内存总额buffers/cached:缓存缓冲使用物理内存大小available:还可以被应用程序使用的物理内存大小
- 根据可用内存修改配置文件【apache-tomcat-HOME\bin\catalina.sh】
- 配置样例
内存设置说明: 堆内存设置:-Xms 初始堆大小。如:-Xms256m或2G,默认为物理内存1/64。-Xmx 最大堆大小。如:-Xmx512m或2G,默认为物理内存1/4。非堆内存设置:-XX:PermSize 永久代(方法区)的初始大小,默认为物理内存1/64。-XX:MaxPermSize 永久代(方法区)的最大值,默认为物理内存1/4。
Tomcat时区设置
场景:服务器时间问题,会导致某些对时效性要求较高或定时任务等,受到不可估量的影响,需重视
- 修改配置文件【apache-tomcat-HOME\bin\catalina.sh】
- 配置样例
配置方式不唯一,可直接设置时区:
Duser.timezone=GMT+08
Tomcat日志分割
场景:一般情况,程序中会使用log4j日志插件处理系统日志,但是,在某些情况下,依旧需要使用Tomcat自带的日志排查问题,Tomcat日志只记录一个,文件会非常大,因此,需要对Tomcat的日志进行分割,方便跟踪
- 参考方案
使用cronolog - 安装cronolog
/data/soft/cronolog-masterln -s configure.ac bootstrap./configure --prefix=/data/cronologmakemake 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-HOME\logs\catalina.2011-11-07.out】
Tomcat连接池
推荐使用Druid、BoneCP
- 确认Tomcat使用的连接池版本
Tomcat7以前使用的都是DBCP1,以后都使用DBCP2
- 修改配置文件
<!-- 修改【apache-tomcat-HOME\conf\context.xml] --><!-- 在最后添加 --><!-- tomcat DBCPPool --><Resource name="jdbc/otmsweb" auth="Container" type="javax.sql.DataSource"username="user"password="pass"driverClassName="oracle.jdbc.OracleDriver"url="jdbc:oracle:thin:@ip:port/ins"factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory"maxIdle="30"minIdle="10"maxWaitMillis="30000"maxTotal="30"removeAbandonedOnBorrow="true" removeAbandonedTimeout="180"logAbandoned="true"/>
参数说明
<!-- 修改主应用【server-HOME\WEB-INF\web.xml] --><!-- tomcat DBCPPool --><resource-ref ><description >databaseConnection</description ><res-ref-name >jdbc/otmsweb</res-ref-name ><res-type >javax.sql.DataSource</res-type ><res-auth >Container</res-auth ></resource-ref >
参数说明
参数基本固定,只需要修改中连接池名称与context.xml中一致即可
Tomcat连接池加密
企业项目中,对于暴露的配置信息最为忌讳,存在安全问题,所以需要对敏感信息进行加密
- 编写加解密程序
// 思路如下// 1、编写加解密工具类,可使用主流加密方式,亦可自己设计// 2、重写dbcp加载配置类,填充用户密码时,调用解密方法// org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory// 加密工程如下:https://download.csdn.net/download/smilecold/86176894
- 放置到【apache-tomcat-HOME\lib】下
- 修改连接池配置文件,用户、密码信息替换为密文,并修改加载配置类
运行工程(注意打包时指定main入口)加密用户密码
<!-- 修改连接池配置中的加载类,配置为自己的工程路径 -->factory="org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory"
常见报错
- 驱动找不到
将驱动包添加到【apache-tomcat-HOME\lib】下 - 报错IllegalArgumentException: The AJP Connector is configured with secretRequired=“true” but the secret
<!-- 修改server.xml --><Connector port="8009" protocol="AJP/1.3" redirectPort="8443" secretrequired=""/>
具体问题,具体分析,善看日志!
Tomcat配置(dbcp连接池、连接池加密、日志分割)相关推荐
- Apache的配置与应用(构建web、日志分割及AWStats分析系统)
Apache的配置与应用 一.构建虚拟Web主机 二.httpd服务支持的三种虚拟机类型 1.基于域名的虚拟主机 2.基于IP地址的虚拟主机 3.基于端口的虚拟主机 三.构建web虚拟目录与用户授权限 ...
- 如何实现Tomcat连接池数据库密码加密
问题背景: 快逸报表应用在tomcat应用服务器进行部署时,如果需要调用tomcat配置好的数据库连接池,就不得不把报表数据源连接的密码以明文形式暴露,这样数据库连接的用户名密码都非常容易被获取,是非 ...
- mysql事务锁导致tomcat崩溃_数据库连接池连接耗尽,导致tomcat请求无响应,呈现出假死状态...
最困难的事情就是认识自己! 个人网站 ,欢迎访问! 前言:最近,测试部门的同事找到我,说他们测试时,没一会就发现服务接口请求一直无响应,Tomcat跟死掉了一样,也没有返回任何的错误响应,说让我赶紧排 ...
- Tomcat中设置数据源和连接池
对于大型网站来说,信息查询的次数会非常多,每次查询都需要这样的过程:加载驱动程序.创建连接.创建语句对象.执行SQL语句.关闭这些对象.这样使得每一个用户访问的时候都需要服务器做出相应,这样的话服务器 ...
- druid 连接db2_DRUID连接池的实用 配置详解
DRUID介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针 ...
- dbcp与c3po连接池
Dbcp:效率高,但是安全性一般 C3p0:安全性很高,效率偏低 DBCP也是一个开源的连接池,是Apache Commons成员之一,在企业开发中也比较常见,tomcat内置的连接池. DBCP连接 ...
- Tomcat JDBC池–连接泄漏–捕获罪魁祸首
数据库连接泄漏是可以隐藏的东西,除非特别注意,否则将在系统高峰期最关键的阶段暴露出来. 我们将手动检查所有打开的连接是否已正确关闭. 然后,我们将提供各种代码质量插件来进行扫描和检查. 当连接通过复杂 ...
- SpringBoot2开启mongodbSSL连接与连接池配置
SpringBoot2开启mongodbSSL连接与连接池配置 本文基于springboot2采用host方式配置mongodb ip连接,官方也支持uri方式连接mongodb(mongodb:// ...
- java tomcat连接池,tomcat容器的内置连接池怎么使用(按时结帐)
tomcat容器的内置连接池怎么使用(按时结帐) tomcat容器的内置连接池怎么使用(按时结帐) 日期:2014-05-18 浏览次数:20325 次 tomcat容器的内置连接池如何使用(按时结帐 ...
最新文章
- 【Android 逆向】Frida 框架 ( 安装 frida 12.7.5 | 安装 frida-tools 5.1.0 | PC 端 frida 与 安卓模拟器端 frida-server )
- 【Excel】VBA自动化更新数据表格
- 3.jeesite传统开发
- Makefile中的patsubst函数
- PTA第3章-2 查验身份证 (15 分)
- XCTF_Web_新手练习区:disabled_button
- HDU 6071 Lazy Running
- 转 :原码,反码,补码
- JS 获取指定URL的时间
- Windows Azure 客户真实案例:交互式解决方案提供商获得了敏捷性,通过托管服务节省了成本...
- linux 7 查看网卡配置文件,如何查询centos网卡配置文件
- Python3 大型网络爬虫实战 003 — scrapy 大型静态图片网站爬虫项目实战 — 实战:爬取 169美女图片网 高清图片
- 市场战略再升级 解析融云的生态平台+纵深发展
- php把 图片上传到 图片服务器
- Codeforces Round #614 (Div. 2) A题ConneR and the A.R.C. Markland-N
- 研究生可以不用学英语?只要考研英语或六级分数高!
- ubuntu 屏幕亮度无法调节
- WiFi远程监控,监控摄像头只有在WiFi环境才能使用吗
- gif软件(ShareX)
- 标准成本和实际成本的比较