Lorsqu'une instance ApsaraDB RDS pour PostgreSQL atteint sa limite de connexions, les nouvelles tentatives échouent. Mettez fin aux connexions inutiles pour rétablir l'accès, puis appliquez des mesures à long terme pour éviter que le problème ne se reproduise.
Problème
Lorsque le nombre de connexions à une instance ApsaraDB RDS pour PostgreSQL dépasse la limite autorisée, les clients reçoivent l'erreur suivante :
FATAL: remaining connection slots are reserved for non-replication superuser connections
Solution
Solution à court terme
Mettez fin aux connexions inutiles.
Connectez-vous à la console ApsaraDB RDS et accédez à la page Instances. Dans la barre de navigation supérieure, sélectionnez la région où se trouve l'instance RDS. Localisez ensuite l'instance RDS concernée et cliquez sur son ID.
Dans le volet de navigation de gauche, choisissez Autonomy Services > Diagnostics.
Cliquez sur l'onglet Session Management.
-
Sur la page Session Management, examinez les sessions actives et mettez fin aux connexions inactives. Pour plus d'informations, consultez la rubrique Gestion des sessions.
Cliquez sur End Selected Sessions pour terminer des sessions spécifiques, ou sur End All Sessions pour mettre fin à toutes les connexions actives.
Solutions à long terme
Optimisez les requêtes lentes : identifiez et optimisez les requêtes de longue durée afin de libérer des connexions et de réduire la charge. Pour en savoir plus, reportez-vous à la section Requêtes lentes.
Activez le regroupement de connexions (connection pooling) : cette méthode réduit la surcharge liée à la création et à la fermeture fréquentes des connexions, ce qui permet de maîtriser la charge du serveur. Consultez la rubrique Activer ou désactiver le regroupement de connexions (PgBouncer).
Utilisez un proxy de base de données : cela simplifie la gestion des connexions et améliore la haute disponibilité, les performances et la maintenabilité. Cette solution est recommandée en cas de charge élevée sur l'instance principale, de séparation lecture/écriture, de nombre important de connexions ou d'isolation des connexions. Plus d'informations dans la rubrique Proxy de base de données.
-
Mettez à niveau le type d'instance : si le regroupement de connexions et le proxy de base de données ne suffisent pas à répondre à vos besoins, migrez vers un type d'instance offrant une limite de connexions plus élevée.
-
Les limites de connexions par type d'instance sont répertoriées dans la rubrique Types d'instances principales ApsaraDB RDS pour PostgreSQL.
RemarqueConsultez votre type d'instance actuel dans la section Configuration Information de la page Basic Information.
Pour modifier les spécifications, suivez les instructions de la rubrique Modifier les spécifications d'instance.
-
S'applique à
ApsaraDB RDS pour PostgreSQL