O tempo limite de conexão TCP já cumpriu sua função quando o cliente se conecta ao proxy. A próxima espera—receber uma resposta CONNECT completa—pode ser regida por um temporizador diferente.

O proxy pode ainda estar conectando-se ao upstream, trocando mensagens de autenticação ou aguardando outro serviço. A resposta normal do site ainda não começou.

Última etapa concluídaO que ainda está em espera?
TCP conectado ao proxyO handshake do proxy, incluindo a aceitação do CONNECT
CONNECT aceitoO TLS do destino, quando o alvo o utiliza
Requisição ao destino enviadaA resposta do destino

Encontre o temporizador ativo enquanto o conector lê e grava esse handshake. Uma propriedade chamada “response timeout” pode entrar em vigor somente após o estabelecimento da rota. Com o HttpClient 5, distinga ConnectionConfig e seu tempo limite de socket, a configuração do handshake TLS e o tempo limite de resposta no nível da requisição. Aplique a configuração de conexão pertinente por meio do gerenciador usado pelo cliente real. Gerações antigas do Apache HttpClient usam APIs diferentes, portanto um trecho antigo não é um mapa confiável dessas responsabilidades.

Mantenha uma rejeição final de CONNECT como resposta do proxy. Uma resposta bem-sucedida seguida de uma parada de TLS é outro estágio de falha. “TCP conectado; nenhuma resposta CONNECT completa antes do prazo de configuração” descreve o problema com mais precisão do que um tempo limite genérico de proxy.

Um prazo total pode limitar a espera do chamador junto com esses limites de fase. Quando ele expirar, cancele ou feche a operação pelo ciclo de vida suportado pelo cliente antes que outra tentativa consuma capacidade de conexão.

Artigos relacionados