何らかの原因でアプリケーションがダウンして、アプリケーションが異常終了した場合、データベースサーバ上にアプリケーションとのコネクションが残る可能性があります。この状態が長時間続いた場合、新しいアプリケーションがデータベースサーバに接続してもエラーになったり、テーブルなどが使用中である旨のエラーになることがあります。
そのため、一定時間、アイドル中のコネクションを自動的に切断することを推奨します。
コネクションが自動切断されるまでの時間は、postgresql.confファイルに以下のパラメータを設定してください。
パラメータ名 | 設定値 | 説明 |
---|---|---|
tcp_keepalives_idle | keepaliveを送信するまでの時間(秒数) 0の場合はシステムのデフォルト値を使用します。 | 指定された秒数間、アイドル中のコネクションに対して、keepaliveを送信します。 30秒を指定することを推奨します。 |
tcp_keepalives_interval | keepaliveの送信間隔時間(秒数) 0の場合はシステムのデフォルト値を使用します。 | 指定された間隔でkeepaliveを送信します。 6秒を指定することを推奨します。 |
注意
デスクトップヒープの設定を変更しない限り、コネクションの最大接続数は、125になります。
参照
パラメータの詳細については、“PostgreSQL Documentation”の“Server Administration”の“Connection Settings”を参照してください。