ApsaraDB RDS for PostgreSQL インスタンスが最大接続数に達すると、新しいクライアント接続は失敗します。 不要な接続を終了してアクセスを復元し、再発を防ぐための長期的な解決策を適用します。
問題
ApsaraDB RDS for PostgreSQL インスタンスの接続数が上限を超えると、クライアントは次のエラーを受け取ります。
FATAL: remaining connection slots are reserved for non-replication superuser connections
ソリューション
短期的な解決策
不要な接続を終了します。
長期的な解決策
-
スロークエリの最適化:実行時間の長いクエリを特定して最適化し、負荷を軽減してリソースを解放します。 詳細については、「スロークエリ」をご参照ください。
-
コネクションプーリングの有効化:頻繁な接続の作成と切断によるオーバーヘッドを削減し、サーバーの負荷を制御するのに役立ちます。 詳細については、「コネクションプーリング (PgBouncer) の有効化または無効化」をご参照ください。
-
データベースプロキシの使用:接続管理を簡素化し、高可用性、パフォーマンス、保守性を向上させます。 プライマリインスタンスの負荷が高い場合、読み書き分離、多数の接続、または接続の分離に最適です。 詳細については、「データベースプロキシ」をご参照ください。
-
インスタンスタイプのアップグレード:コネクションプーリングとデータベースプロキシで接続需要を満たせない場合は、より高い最大接続数を持つインスタンスタイプにアップグレードします。
-
インスタンスタイプごとの最大接続数は、「プライマリ ApsaraDB RDS for PostgreSQL インスタンスタイプ」に記載されています。
説明現在のインスタンスタイプは、[基本情報] ページの [設定情報] セクションで確認できます。
-
詳細については、「インスタンス仕様の変更」をご参照ください。
-
適用対象
-
ApsaraDB RDS for PostgreSQL