我正在尝试理解数据库连接池中的特定场景。任何关于这方面的指示都会很有帮助。
安装:
webapp的配置:
webapp的context.xml具有数据库连接池的以下参数:
<Context path=...
<Resource name=... maxActive="20" maxIdle="18"
removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"
validationQuery="select 1" testOnBorrow="true"... />
</Context>场景:
这个The应用程序打开并关闭了许多连接。然而,当webapp不再与maxIdle=18打交道时,这个池会保留其中的18个(如dB )。
现在,一个单独的纯Java独立应用程序请求数据库连接。MySQL服务器将如何响应?
如果我不清楚情况,请告诉我,我会进一步澄清。
干杯,Rohitesh
发布于 2013-05-29 05:47:20
DB服务器不知道打开的连接是否来自池。对于DB服务器来说,它只是一个开放的连接,它永远不会主动关闭它。
发布于 2013-05-29 06:10:54
池的连接限制与数据库的总连接限制无关。这只是特定连接池的限制。只要尚未达到为服务器配置的总限制,其他应用程序就可以分配连接。
当然,保持大量(空闲)连接打开的连接池将意味着您更快地达到配置的服务器限制(MySQL的缺省值为100 )。
https://stackoverflow.com/questions/16806218
复制相似问题