第 14 章 数据库连接池的概念
本节旨在帮助您了解如何为红帽构建的 Keycloak 配置数据库连接池的注意事项和最佳实践。对于应用此功能的配置,请访问红帽构建的 Keycloak Operator 的 Deploy Red Hat build of HA。
14.1. 概念
创建新数据库连接的成本为需要时间。当请求到达时创建它们会延迟响应,因此最好在请求到达前创建它们。它还有助于在短时间内创建很多连接使系统和块线程减慢速度更糟糕。https://en.wikipedia.org/wiki/Cache_stampede关闭连接也会使该连接的所有服务器端语句缓存无效。
为获得最佳性能,初始的值最小和最大数据库连接池大小应相等。这可避免在新请求发生时创建新的数据库连接,而成本较高。
只要可能允许将服务器端声明缓存绑定到连接,就可以使数据库连接保持打开。对于 PostgreSQL,若要使用服务器端准备语句,需要至少执行(默认为 )查询。
如需更多信息,请参阅准备的语句中的 PostgreSQL 文档。