初始连接池大小和最小连接池大小
连接池中最小连接数的值。此值还确定了在创建池时或应用程序服务器启动时放置在池中的连接数。
最大连接池大小
连接池中最大连接数的值。
根据上述两个定义,如果最小池大小为1,最大池大小为100,则:
- 当池被创建时或应用程序服务器启动时,只会新创建一个连接。
- 一天中会有很多并发请求,需要更多的连接,这些连接将在一天中创建,最多可达到100。但是,在创建这些连接时,它们不会从池中删除,直到应用程序服务器关闭或我们删除整个池?
我对这两个观点正确吗?
初始连接池大小和最小连接池大小
连接池中最小连接数的值。此值还确定了在创建池时或应用程序服务器启动时放置在池中的连接数。
最大连接池大小
连接池中最大连接数的值。
根据上述两个定义,如果最小池大小为1,最大池大小为100,则:
我对这两个观点正确吗?
池大小将保持在您描述的限制之间。一般来说:
概念#1是正确的。
概念#2取决于JDBC连接池。通常,连接池能够根据一天中观察到的使用情况而增长和缩小。重负载会使其增长,而空闲则会使其缩小。
无论如何,每个JDBC连接池的行为都略有不同,因此您应该检查要使用的特定连接池。
1 是正确的,但 2 的假设只有在您不关闭连接并且不为连接设置最大生存时间时才是正确的。
通常情况下,您会关闭连接,然后将其返回/释放到连接池中。
此外,100 最大池大小是不必要的。虽然您没有指定使用哪个连接池,但您可以在hikari pool size中了解更多关于池设置的信息。