如何根据Oracle自治数据库(ATP)调整连接池的大小?
如果我在一个带有1个OCPU的exadata vm中有一个连接池,我应该如何配置我的jdbc连接池?我应该指定多少个连接?最高限额是多少 上面提供的David Fdez是正确的 根据最佳性能的经验法则,到Oracle数据库的最大连接数应该是服务器具有的硬件线程数的一小部分。这是所有客户的总数。看 这并不总是可行的。如果有数百个客户端连接到一个小型服务器,即使每个客户端有一个连接,也会超出该限制。没关系。数据库仍能正常工作,但无法达到其所能达到的最大性能;它将花费比理想情况更多的时间来切换上下文。经验法则仍然有用。它告诉我们每个客户端应该只有一个连接,而不是20个如何根据Oracle自治数据库(ATP)调整连接池的大小?,oracle,database-connection,oracle-cloud-infrastructure,exadata,Oracle,Database Connection,Oracle Cloud Infrastructure,Exadata,如果我在一个带有1个OCPU的exadata vm中有一个连接池,我应该如何配置我的jdbc连接池?我应该指定多少个连接?最高限额是多少 上面提供的David Fdez是正确的 根据最佳性能的经验法则,到Oracle数据库的最大连接数应该是服务器具有的硬件线程数的一小部分。这是所有客户的总数。看 这并不总是可行的。如果有数百个客户端连接到一个小型服务器,即使每个客户端有一个连接,也会超出该限制。没关系。数据库仍能正常工作,但无法达到其所能达到的最大性能;它将花费比理想情况更多的时间来切换上下文。
反对意见是,只有一个连接,客户端请求将不得不等待一个连接。这是真的,但是如果有20个连接,客户端就不会等待连接。相反,当服务器在大量数据库进程之间切换上下文时,它们将等待更长的时间。如果每个客户端有20个连接,而不是1个连接,系统的整体性能会差得多。除非您没有指定您的要求,否则您无法期望得到有用的答案。当您有物理硬件时,有一个简单的公式可以尝试找到最佳性能池大小(请参阅)。但在这种情况下,当您从控制面板创建一个自治数据库时,您对硬件、核心、线程等一无所知,java web应用程序必须使用连接池进行连接。如果池中没有足够的连接,请检查原因是否有效。是否尽快释放到池的连接?等。如果你必须增加最大尺寸,请一点一点地增加。谢谢道格拉斯。youtube链接很有价值。我将结束对它的压力测试。道格拉斯,谢谢你参考YouTube链接。这是我的团队制作的一系列视频之一。我很高兴这个消息已经传开了。