A proxy elfogadta a TCP-t, de soha nem fejezte be a CONNECT választ. A webhely válasza még nem kezdődött el; a csak arra a későbbi válaszra irányuló időtúllépés korlátlanul várakoztathatja ezt a létrehozást.

Az Apache HttpClient 5.3.1 esetében állítsa be a kapcsolatkezelő alapértelmezéseit:

var connection = ConnectionConfig.custom()
    .setConnectTimeout(Timeout.ofSeconds(5))
    .setSocketTimeout(Timeout.ofSeconds(10))
    .build();

var manager = PoolingHttpClientConnectionManagerBuilder.create()
    .setDefaultConnectionConfig(connection)
    .build();

var client = HttpClients.custom()
    .setConnectionManager(manager)
    .setProxy(new HttpHost("http", "proxy.example", 8080))
    .build();

Használja az Apache HttpComponents 5 osztályait a org.apache.hc alatt, a Timeout pedig a core5 segédcsomagban található. Tartsa meg a klienst a munkájához, és zárja be. Elkülönített nyilvános HTTP-teszthez a HTTP proxy lista egyik jelöltje biztosítja a végpontot; az időtúllépések összehasonlításakor tartsa állandóan a célt.

KorlátKezelt várakozás
Csatlakozási időtúllépésKapcsolat létrehozása
Socket időtúllépésAlapértelmezett I/O inaktivitás, beleértve a CONNECT cserét
Készletből szerzés / alkalmazásválaszMás, külön beállított szakaszok

A CONNECT után a TLS-nek saját létrehozási korlátra lehet szüksége a HttpClient 5 TLS-konfigurációján keresztül. Különböztesse meg az inaktivitást a teljes határidőtől: a szakaszos bájtok vagy az ismétlődő hitelesítési cserék meghosszabbíthatják a teljes időt. Használja az alkalmazás által támogatott határidő- vagy megszakítási szabályzatot egyetlen költségvetés a teljes műveletre.

Kapcsolódó cikkek