sql >> Database >  >> RDS >> PostgreSQL

Hoe de tcp_keepalives-instellingen in Postgresql te gebruiken?

Ik denk dat je in plaats daarvan je besturingssysteem moet configureren. Het wijzigen van keepalive-parameters door programma's wordt nog niet breed ondersteund. Dit zou je moeten helpen:
TCP keepalive gebruiken om netwerkfouten te detecteren

Ook uw parameters zijn slecht gekozen. Als tcp_keepalives_count=1 werkte, zal zelfs één verloren keepalive-pakket uw verbinding verbreken. En losse pakketten gaan vaak verloren. Ik zou het volgende gebruiken in /etc/sysctl.conf op MacOSX/FreeBSD:
net.inet.tcp.keepidle =60000
net.inet.tcp.keepintvl =10000
Het besturingssysteem verbreekt dan maximaal 140 seconden (60 seconden inactief + 8 keepalive-pakketten in intervallen van 10 seconden) nadat de verbinding is verbroken.




  1. Probleem met database-efficiëntie/structuur

  2. update meerdere records in meerdere geneste tabellen in oracle

  3. Fout bij aanmelden bij update

  4. DAU/MAU opvragen in de loop van de tijd (dagelijks)