El temps d'espera de connexió TCP ha fet la seva feina quan el client es connecta al proxy. L'espera següent—rebre una resposta CONNECT completa—pot regir-se per un temporitzador diferent.

És possible que el proxy encara s'estigui connectant a l'origen, intercanviant missatges d'autenticació o esperant un altre servei. La resposta habitual del lloc web encara no ha començat.

Darrer pas completatQuè s'espera encara?
TCP connectat al proxyL'encaixada de mans del proxy, inclosa l'acceptació de CONNECT
CONNECT acceptatTLS de destinació, quan l'objectiu l'utilitza
Sol·licitud de destinació enviadaLa resposta de la destinació

Trobeu el temporitzador actiu mentre el connector llegeix i escriu aquesta encaixada de mans. Una propietat anomenada “response timeout” pot entrar en vigor només després d'establir la ruta. Amb HttpClient 5, distingiu ConnectionConfig i el seu temps d'espera de sòcol, la configuració de l'encaixada de mans TLS i el temps d'espera de resposta a nivell de sol·licitud. Apliqueu la configuració de connexió pertinent mitjançant el gestor que utilitza el client real. Les generacions antigues d'Apache HttpClient fan servir API diferents, així que un fragment antic no és un mapa fiable d'aquestes responsabilitats.

Manteniu el rebuig final de CONNECT com a resposta del proxy. Una resposta correcta seguida d'una aturada de TLS és una altra etapa de fallada. «TCP connectat; cap resposta CONNECT completa abans del termini de configuració» descriu el problema amb més precisió que un temps d'espera genèric de proxy.

Un termini global pot limitar l'espera del cridador al costat d'aquests límits de fase. Quan expiri, cancel·leu o tanqueu l'operació mitjançant el cicle de vida compatible amb el client abans que un altre intent consumeixi capacitat de connexió.

Articles relacionats