关于使用ThreadLocal管理数据库连接的一些疑问
使用ThreadLocal封装db connection后数据库连接的最大数==最大线程数???
也就是说,在weblogic里面,分配给http的最大线程数为50
那么db connection最多也就使用50个连接对吗???
使用ThreadLocal封装db connection后数据库连接的最大数==最大线程数???
也就是说,在weblogic里面,分配给http的最大线程数为50
那么db connection最多也就使用50个连接对吗???
盼banq前来解惑ing
http连接数和Db连接数是不同概念,一个前端,一个是后端。而且这两者我不认为有什么必然关系。
sorry,我想我有个概念搞混了
在Weblogic里面可以设置用来处理请求的weblogic.kernel.default线程的数量,而这个线程数和系统中的线程数不是一个概念
当出现RuntimeException时,weblogic会自动摧毁该线程
这样线程上绑定的数据库连接、会话资源释放会有问题
所获得性能上的收益未必有风险大,除非有测试数据给以
证明
>
> 使用ThreadLocal封装db
> connection后数据库连接的最大数==最大线程数???
>
> 也就是说,在weblogic里面,分配给http的最大线程数为50
> 那么db connection最多也就使用50个连接对吗???
是的,实际上使用的最大DB连接数应该是50个。
Banq,我想他问这个问题的核心在于确定ThreadLocal和web server线程之间的关系。
两者确实没有联系,但跑在一个Web server的JVM上,应该就有了这层必然关系。 你的http连接数量(线程)最大值只有50个,你的dbconnection开10000000个也没有用吧。