Na een lange en meedogenloze strijd, denk ik dat ik dit probleem heb opgelost door simpelweg de strategie te volgen waar anderen het over hebben, maar met behulp van de psycopg2 connect-functie zelf:
from psycopg2 import connect
conn = connect(
database=database,
user=username,
password=password,
host=hostname,
port=port,
connect_timeout=3,
# https://www.postgresql.org/docs/9.3/libpq-connect.html
keepalives=1,
keepalives_idle=5,
keepalives_interval=2,
keepalives_count=2)
Ik zag dat psycopg2 constant bleef hangen bij langlopende vragen, maar nu lijkt het probleem volledig te zijn opgelost.
Let op:dit kan nieuwe functionaliteit zijn, aangezien deze vraag oud is.