欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

连接池中的maxIdle,MaxActive,maxWait参数

程序员文章站 2022-07-12 20:37:58
...

连接池中的maxIdle,MaxActive,maxWait参数

name:表示你的连接池的名称也就是你要访问连接池的地址

auth:是连接池管理权属性,Container表示容器管理

type:是对象的类型

driverClassName:是数据库驱动的名称

url:是数据库的地址

username:是登陆数据库的用户名

password:是登陆数据库的密码

 

maxIdle,最大空闲数,数据库连接的最大空闲时间。超过空闲时间,数据库连接将被标记为不可用,然后被释放。设为0表示无限制。
MaxActive,连接池的最大数据库连接数。设为0表示无限制。
maxWait ,最大建立连接等待时间。如果超过此时间将接到异常。设为-1表示无限制。

*maxActive:最大连接数据库连接数,设 0 为没有限制
*maxIdle:最大等待连接中的数量,设 0 为没有限制
*maxWait:最大等待毫秒数, 单位为 ms, 超过时间会出错误信息。一般把maxActive设置成可能的并发量就行了

 

maxActive、maxIdle和maxWait参数:

 

maxActive是最大激活连接数,这里取值为20,表示同时最多有20个数据库连接。

maxIdle是最大的空闲连接数,这里取值为20,表示即使没有数据库连接时依然可以保持20空闲的连接,而不被清除,随时处于待命状态。

MaxWait是最大等待秒钟数,这里取值-1,表示无限等待,直到超时为止,也可取值9000,表示9秒后超时。

 

例如:

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
		destroy-method="close">
		<property name="driverClassName" value="com.mysql.jdbc.Driver">
		</property>
		<property name="url" value="jdbc:mysql://localhost:3306/myoa">
		</property>
		<property name="username" value="root"></property>
		<property name="password" value="1"></property>
		
<!-- BasicDataSource提供了close()方法关闭数据源,所以必须设定destroy-method=”close”属性,
			以便Spring容器关闭时,数据源能够正常关闭。除以上必须的数据源属性外,还有一些常用的属性: 
			defaultAutoCommit:设置从数据源中返回的连接是否采用自动提交机制,默认值为 true; 
			defaultReadOnly:设置数据源是否仅能执行只读操作,默认值为 false;
			maxActive:最大连接数据库连接数,设置为0时,表示没有限制;
		  	maxIdle:最大等待连接中的数量,设置为0时,表示没有限制; 
			maxWait:最大等待秒数,单位为毫秒, 超过时间会报出错误信息; 
			validationQuery:用于验证连接是否成功的查询SQL语句,SQL语句必须至少要返回一行数据,如你可以简单地设置为:“select count(*) from user”; 
			removeAbandoned:是否自我中断,默认是 false;
			removeAbandonedTimeout:几秒后数据连接会自动断开,在removeAbandoned为true,提供该值; 
			logAbandoned:是否记录中断事件,默认为 false. -->
			
		<property name="maxActive" value="100" />
		<property name="maxIdle" value="20" />
		<property name="maxWait" value="3000" />
		<property name="removeAbandoned" value="true" />
		<property name="removeAbandonedTimeout" value="60" />
		<property name="logAbandoned" value="true" />
	</bean>