标签:提示 数据库连接池 返回 简单 hang 原创 tomcat 执行sql min
什么?不是有C3P0/DBCP这些成熟的数据库连接池吗?一直用的好好的,为什么又搞出一个BoneCP来?因为,传说中BoneCP在快速这个特点上做到了极致,官方数据是C3P0等的25倍左右。不相信?其实我也不怎么信。可是,有图有真相啊(图片来自BoneCP官网:http://jolbox.com/benchmarks.html):
<!-- BoneCp Datasource --> <bean id="dataSourceBoneCp" class="com.jolbox.bonecp.BoneCPDataSource" destroy-method="close"> <property name="driverClass" value="${db.driverClass}" /> <property name="jdbcUrl" value="${db.url}" /> <property name="username" value="${db.username}" /> <property name="password" value="${db.password}" /> <property name="idleConnectionTestPeriodInMinutes" value="2" /> <property name="idleMaxAgeInMinutes" value="2" /> <property name="maxConnectionsPerPartition" value="2" /> <property name="minConnectionsPerPartition" value="0" /> <property name="partitionCount" value="2" /> <property name="acquireIncrement" value="1" /> <property name="statementsCacheSize" value="100" /> <property name="lazyInit" value="true"/> <property name="maxConnectionAgeInSeconds" value="20"/> <property name="defaultReadOnly" value="true"/> </bean>
<!-- Hikari Datasource --> <bean id="dataSourceHikari" class="com.zaxxer.hikari.HikariDataSource" destroy-method="shutdown"> <!-- <property name="driverClassName" value="${db.driverClass}" /> --> <!-- 无需指定,除非系统无法自动识别 --> <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8" /> <property name="username" value="${db.username}" /> <property name="password" value="${db.password}" /> <!-- 连接只读数据库时配置为true, 保证安全 --> <property name="readOnly" value="false" /> <!-- 等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQLException, 缺省:30秒 --> <property name="connectionTimeout" value="30000" /> <!-- 一个连接idle状态的最大时长(毫秒),超时则被释放(retired),缺省:10分钟 --> <property name="idleTimeout" value="600000" /> <!-- 一个连接的生命时长(毫秒),超时而且没被使用则被释放(retired),缺省:30分钟,建议设置比数据库超时时长少30秒,参考MySQL wait_timeout参数(show variables like ‘%timeout%‘;) --> <property name="maxLifetime" value="1800000" /> <!-- 连接池中允许的最大连接数。缺省值:10;推荐的公式:((core_count * 2) + effective_spindle_count) --> <property name="maximumPoolSize" value="15" />
其中,很多配置都使用缺省值就行了,除了maxLifetime和maximumPoolSize要注意自己计算一下。
[转帖]为什么HikariCP被号称为性能最好的Java数据库连接池,如何配置使用
标签:提示 数据库连接池 返回 简单 hang 原创 tomcat 执行sql min
原文地址:https://www.cnblogs.com/jinanxiaolaohu/p/12020252.html