关键词
- maxActive=20: 连接池中最多能够同时存在的连接数,配置为20。
- `initialSize=10: 数据源初始化时创建的连接数,配置为10。
- maxIdle=10: 连接池中最大空闲连接数,也就是说当连接池中的连接数超过10个时,多余的连接将会被释放,配置为10。
- minIdle=5: 连接池中最小空闲连接数,也就是说当连接池中的连接数少于5个时,会自动添加新的连接到连接池中,配置为5。
- `minEvictableIdleTimeMillis=180000: 连接在连接池中最小空闲时间,这里配置为3分钟,表示连接池中的连接在空闲3分钟之后将会被移除,避免长时间占用资源。
- timeBetweenEvictionRunsMillis=20000: 连接池中维护线程的运行时间间隔,单位毫秒。这里配置为20秒,表示连接池中会每隔20秒检查连接池中的连接是否空闲过长时间并且需要关闭。
- validationQuery=select 1: 验证连接是否有效的SQL语句,这里使用了一个简单的SELECT 1查询。
PrintReferenceGC是JVM提供的一个参数,用于在进行垃圾回收时打印引用处理相关信息。当启用该参数后,JVM会在每次进行垃圾回收时将一些有关引用处理(Reference Processing)的信息输出到标准输出或指定的日志文件中。打印的详细的gc日志如下:
具体来说,PrintReferenceGC参数可帮助开发人员和系统管理员更好地了解应用程序中各种类型引用被处理的情况,包括Soft Reference、Weak Reference、Phantom Reference等。这些信息对于诊断内存泄漏和调整垃圾回收器性能非常有用。
注意,本源码基于当前依赖的mysql-connector-java-5.1.30.jar, 各版本的代码有一定差异性质;涉及MySQL创建连接池的地方为:com.mysql.jdbc.NonRegisteringDriver#connect方法:
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |