PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Comment utiliser les paramètres tcp_keepalives dans Postgresql ?

Je pense que vous devez plutôt configurer votre système d'exploitation. La modification des paramètres keepalive par les programmes n'est pas encore largement prise en charge. Cela devrait vous aider :
Utiliser TCP keepalive pour détecter les erreurs réseau

Aussi vos paramètres sont mal choisis. Si tcp_keepalives_count=1 travaillé alors même un paquet keepalive perdu abandonnera votre connexion. Et les paquets individuels se perdent souvent. J'utiliserais ce qui suit dans /etc/sysctl.conf sur MacOSX/FreeBSD :
net.inet.tcp.keepidle =60000
net.inet.tcp.keepintvl =10000
Le système d'exploitation interrompra alors les connexions pendant au plus 140 secondes (60 secondes d'inactivité + 8 paquets keepalive à intervalles de 10 secondes) après avoir perdu la connectivité.