Canto tempo pode permanecer aberto un túnel CONNECT?
Separe a vida dun túnel establecido da reutilización de respostas HTTP, das políticas de inactividade do intermediario e da propia sesión da aplicación de destino.
CONNECT non promete un túnel aberto indefinidamente. Tras un intercambio correcto, a conexión transporta un fluxo continuo de bytes cara ao host e ao port solicitados. Pode transportar varios intercambios dentro dunha sesión TLS de destino mentres os participantes e a rede a manteñan aberta.
Dous límites do proxy compórtanse de xeito distinto: o tráfico pode impedir que caduque un temporizador de inactividade, pero non pode ampliar un límite de vida absoluto. O protocolo de destino tamén ten voz. Un cliente HTTP interno pode pechar a súa conexión; unha aplicación WebSocket pode rematar a súa sesión. O proxy non pode manter viva esa sesión de destino despois.
Un túnel está ligado ao seu obxectivo. Unha vez que flúen os bytes do túnel, a conexión xa non é unha canle de peticións HTTP ordinaria na que emitir outro CONNECT para un destino non relacionado. O cliente necesita outra conexión ou outro túnel xestionado pola súa biblioteca.
Para un feed persistente, planifique reconexións cos mecanismos de vitalidade e conexión que admita o cliente. Se se pecha tras un silencio, unha política de inactividade é unha pista útil; se se pecha tras unha duración fixa malia o tráfico, investigue no seu lugar un límite absoluto. Para un feed WebSocket, restaure tamén o estado da aplicación tras reconectar.