hello,
Hogy tudom lebeszelni a Zorp-ot arrol, hogy kozben lebontsa a kapcsolatot? Most 10mp utan bont, a modulban talaltam egy timeout_request-et, ami 10mp, de van egy timeout attributum is.
Tudnatok segiteni, melyik pontosan mire vonatkozik, ill. mit allitsak be?
Nem tudom, GPL-es Zorpban megy-e, nekem hasonló timeoutos problémát kellett leküzdeni kereskedelmi Zorppal (mindezt a Balabit segítségével, tehát a megoldásért őket illeti a köszönet). Ehhez én a Zorp által alapból nem használt tcp keepalive-ot használtam fel, mégpedig egy új proxyosztállyal, amely az alábbi módon néz ki:
import socket from socket import * def config(self): s = socket.fromfd(self.session.client_stream.fd, socket.AF_INET, socket.SOCK_STREAM) <<<< ez itt egy sor! s.setsockopt(socket.SOL_SOCKET, socket.SO_KEEPALIVE, 1)
Ez a kliens oldal felé úgy nyitja meg a socketet, hogy a keepalive értéket (azaz hogy kell-e keepalive-okat küldeni) beállítja, nekem ez kellett, gondolom a tofd a server oldali descriptor, tehát értelemszerűen módosítható.
ezt ertem, es koszonom, mar csak abban kellene segiteni, hogy ezt az esetet hogy kezeljem: mivel a kliens var a szerverre, ezert jogos a felvetesed, hogy a szerver fele kell beallitani, viszont ilyenkor a klienssel mi lesz? Abba az iranyba nem kell beallitani?
Ezek után a /proc/sys/net/ipv4/tcp_keepalive_time értéket célszerű átállítani valami neked megfelelőre a defaultról, és utána a fenti proxy timeoutját akár végtelenre is állíthatod.
de melyik timeout-ot? :) a "sima" timeout-ot, vagy a request_timeout-ot? Koszonom: a.