当超过max_connections时,连接会发生什么变化?

时间:2016-03-22 12:20:27

标签: postgresql

假设我在max_connections=10中设置了postgresql.conf并建立了11个并发连接。 11-n连接会发生什么?

是否会因为错误而被拒绝,还是会等到某个连接插槽空闲?

如果队列中超过连接等待,是否有超时限制?哪里可以设置?这是一个公平的队列吗?

有关于此的文件吗?我无法在官方文档中找到这个

---------编辑----------

在此找到了一个来源(没有连接池):https://wiki.postgresql.org/wiki/Number_Of_Database_Connections

  

决定不在PostgreSQL服务器本身内部包含连接池,这是故意和有充分理由的:

1 个答案:

答案 0 :(得分:1)

来自documentation

  

max_connections(整数)

     

确定最大并发数   与数据库服务器的连接。默认值通常为100   连接,但如果您的内核设置不会,可能会更少   支持它(在initdb期间确定)。此参数只能是   在服务器启动时设置。

结合变量的名称,应该清楚会发生什么:如果您尝试打开超过设置连接的数量,您将收到错误。在这种情况下,您将收到一个非常突出的错误,即连接数已耗尽。

Postgres本身并不包括任何连接池或类似设备,所以它也是"是的,你进入了"或者"不,你不是"。