LINUX.ORG.RU
ФорумAdmin

(stunnel4 + postgresql client) Проблема висящих в ESTABLISHED соединений


0

1

Добрый день.

Столкнулся с с такой проблемой, сейчас настроено так что клиенты базы данных с начало поднимают туннель(stunnel4), и через него соединяются к базе. Все работает нормально при хорошей связи, как только связь обрываются в системе остаются висеть связка (stunnel<->psql). Вот конфиг туннеля:(stunnel 4.29 on i486-pc-linux-gnu with OpenSSL 0.9.8o 01 Jun 2010) sslVersion = all chroot = /var/lib/stunnel4/ setuid = stunnel4 setgid = stunnel4 pid = /stunnel4.pid socket = l:TCP_NODELAY=1 socket = r:TCP_NODELAY=1 compression = zlib options = DONT_INSERT_EMPTY_FRAGMENTS debug = 7 output = /var/log/stunnel4/stunnel.log [postgresql] accept = <Порт> connect = 5432 Подскажите как полечить проблему, пока помогла установки TIMEOUTidle = 330 но это не очень хорошо т.к. живые соединения должны висеть в idle по возможности бесконечно долго и ждать события от БД, и теоретический при большом количестве проблемных клиентов 5 с лишком минут не хватит что утилизировать все образовавшиеся висяки.

Спасибо.

включить tcp-keepalive и если тебя не устраивает двухчасовой стандартный таймаут, то уменьшить его.

ansky ★★★★★ ()
Ответ на: комментарий от alnkapa

стоит...

И чо? А то может быть стуннель по умолчанию отключает tcp-keepalive на своих сокетах. Посмотри что-ли tcpdump-ом.

ansky ★★★★★ ()
Ответ на: комментарий от ansky

Оч интересно, как посмотреть то что ты сказал tcpdump не понял, но из кода ясно что SO_KEEPALIVE ставиться в 0 по молчанию.

Спасибо за совет поковыряюсь в параметрами запуска.

alnkapa ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.