首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于多个数据库(分片)的Java数据库连接池

用于多个数据库(分片)的Java数据库连接池
EN

Stack Overflow用户
提问于 2009-09-22 16:15:28
回答 3查看 4.3K关注 0票数 2

我想知道为使用分片的web应用程序实现DB连接池的最佳技术是什么。从我能说的最多的(全部?)开源实现只支持后面的单个数据库。至少,我还没有找到支持分片的。

此外,尽管我使用了分片,但并不是所有数据库都具有与其他数据库相同的模式。我不确定这是否重要。

到目前为止,我能想到的唯一解决方案是编写一个位于多个不同池之上的层。每个不同的池可以是任何可用的单一数据库实现。

这个问题已经有解决方案了吗?否则最好的技术是什么?

提前谢谢你,

斯蒂芬。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-09-22 16:36:59

我不认为有支持分片的开源实现。也许,没有真正的需求,因为在多个数据库池上创建一个层并不是太难。它只需要一个分片映射函数(例如哈希函数)和一个管理器类来跟踪多个池。

如果你担心不是所有的数据库都有相同的模式,你可以把额外的模式跟踪配置放到你的管理器类中,这样它就知道哪些分片可以服务于该模式。也就是说,除了db池之外,您还需要跟踪架构以共享信息。这并不是什么额外的工作,因为您无论如何都需要分片配置来确定如何从池中提取正确的分片(例如,用户id mod 10 =1应该从分片1中提取)

祝好运

票数 4
EN

Stack Overflow用户

发布于 2009-09-22 16:56:06

您目前使用的技术堆栈是什么?我知道Hibernate有一个分片项目,但我没有用过它,只是听了一些关于它的播客。

有关它的更多信息,请访问here。另外,前面提到的播客可以在here上找到。

播客解释了关于分片的一些问题,Hibernate插件已经解决的一些冲刺,然后解释了他们预期的前进道路。希望这会有一点帮助!

票数 1
EN

Stack Overflow用户

发布于 2009-09-22 18:18:42

这就是你可以看看的hibernate shards project

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1461076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档