5

我的公司计划使用pgPool-II以受益于其“故障转移”“负载平衡”(以及最终的“复制”)功能。

我们在这里考虑我们有一个由服务器集群托管的J2EE Tomcat Web 应用程序,其中Jakarta Tomcat 连接器 (JK)或类似服务用于在客户端和这些Tomcat服务器之间建立链接(负载平衡)。此外,我们认为我们有一个PostgreSQL 9.3数据库集群,其中pgPool-II用于在Tomcat服务器集群和数据库集群之间进行链接。我们的应用程序是一个多用户应用程序,其中每个用户都与不同的角色相关联(当然就数据库而言)。

我了解到pgPool-II使用与postgreSQL相同的协议,所以要连接到池,我们只需要像我们通常连接到数据库一样连接到它,对吧?

这个邮件副本中,我看到有 2 个池层是没有用的,所以除了pgPool-II之外不需要使用JDBC Tomcat 池。要么我们将 pool 任务委托给JDBC Tomcat pool,要么我们将它委托给pgPool-II,对吧?

所以我最后的问题是:

  • 在这种情况下,如何使用JDBC从pgPool-II正确获取连接,每次用户需要执行SQL请求时,我是否必须简单地要求与pgPool-II建立新连接?不影响性能?

  • 哪个部分应该负责池任务以获得最佳性能?JDBC TomcatpgPool-II还是其他服务,如pgBouncer?最好的方法是什么?

提前致谢!

PS:如果有些地方不清楚,请告诉我,我会编辑我的帖子。

4

0 回答 0