动态数据库连接的连接池
2022-09-04 23:11:19
问题设置基于Web服务(Spring/ Java,Tomcat7和MySql),其中每个用户都有自己的数据库,因此每个请求都需要自己的连接。由于所有数据库都是在运行时动态创建的,因此在启动之前静态配置它们不是一个选项。
为了优化数据库连接使用,数据库连接池的实现会很棒,对吧?
使用Java/Spring:如何为动态数据库创建连接池?我对这里缺乏干净的选择感到有点震惊!
问题:Tomcat的连接池(据我所知,C3P0也是如此)将每个新的DataSource实例视为一个全新的连接池 - >堆栈引用
- 使用通用 MySql 连接创建静态数据源(未在连接时指定数据库)并将连接池与此数据源以及改编的 SQL 语句一起使用,这是一个好主意吗?
堆栈引用 - 如何开发基于自定义持久性数据库的数据源池?这里有任何性能经验吗?有什么建议吗?有没有这样做的库?
- 或者,通过动态地创建Tomcat JNDI数据源来解决Tomcat的DataSource问题是否可行.xml从Java动态地操作它的上下文?
- 我不敢相信没有更简单明了的解决方案。Grails/Hibernate与此斗争,Java / JDBC与此斗争,...通过动态创建用户特定的数据库来在用户基础上分离用户数据是一个罕见的用例吗?如果是这样,什么是更好的设置?
编辑
- 另一个选项是@M.Deinum的建议,使用单个配置的数据源并动态热插拔它以获得正确的连接 - >M.Deinum博客和堆栈引用。
对于像上面这样的连接池,效果如何?