Oracle 中的连接池大小概念

Connection Pool Size concept in Oracle

初始和最小池大小

池中的最小连接数。此值还确定首次创建池时或应用程序服务器启动时放置在池中的连接数。

最大池大小

池中的最大连接数。

根据以上两个定义,如果最小池大小为 1,最大池大小为 100,则:

  1. 第一次创建池或应用程序服务器启动时,只会新建一个连接。
  2. 当天会有很多请求并发命中,并且肯定会需要更多的连接,这些连接将在一天中建立,最多可达 100 个。但是虽然建立了这些连接,但它们不会从池中删除直到应用程序服务器关闭或我们删除整个池?

这两点我说的对吗?

1个正确 , 但 2 假设 仅当 您不关闭连接并且您不设置连接的最大生命周期时才为真。

通常你关闭连接然后它return/released到连接池。

也不需要 100 最大池大小,虽然您没有指定您使用的是哪个连接池,但您可以在 hikari pool size

中阅读有关池设置的更多信息

池大小将保持在您描述的限制范围内。总体思路:

  • 概念 #1 是正确的。

  • 概念 #2 取决于 JDBC 连接池。通常,连接池能够根据白天观察到的使用情况增长和收缩。负载重则增长,闲置则收缩

无论如何,每个 JDBC 连接池的行为都略有不同,因此您应该检查要使用的特定连接池。