Pgbouncer关闭连接

时间:2017-08-08 18:38:51

标签: django postgresql unix pgbouncer

我最近为连接池设置了pgbouncer。我的pgbouncer.ini文件包含

[databases]
mydb = host=localhost port=5432 user=user dbname=mydb

[pgbouncer]
auth_type = any
auth_file = /etc/pgbouncer/users.txt
listen_addr = 127.0.0.1
listen_port = 6432

pool_mode = session

server_reset_query = DISCARD ALL

; total number of clients that can connect
max_client_conn = 100

default_pool_size = 20

我使用Django使用以下配置命中pgbouncer

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'mydb',
        'USER': 'user',
        'PASSWORD': '',
        'HOST': 'localhost',
        'PORT': '6432',
    },
}

当我运行应用程序时,一切似乎都运行良好。但是在pgbouncer日志记录中,我得到了以下日志,这些日志经常重复发生。

2017-08-08 14:36:25.626 1215 WARNING tune_socket(11) failed: Invalid argument
2017-08-08 14:36:25.626 1215 LOG C-0x7ff2d081b590: (nodb)/(nouser)@unix:6432 closing because: client unexpected eof (age=0)

我不知道这是指什么。这可能是阴险的吗?我在配置中弄乱了什么吗?

1 个答案:

答案 0 :(得分:0)

Django会在每次请求后关闭与db的连接,这似乎就是这种情况。您可以尝试将CONN_MAX_AGE = 60添加到您的设置中,然后重试吗?