ప్రాక్సీ TCPని అంగీకరించింది కానీ CONNECT ప్రతిస్పందనను ఎప్పుడూ పూర్తి చేయలేదు. వెబ్సైట్ ప్రతిస్పందన ఇంకా ప్రారంభం కాలేదు; ఆ తర్వాతి ప్రతిస్పందనను మాత్రమే లక్ష్యంగా చేసుకున్న టైమౌట్ ఈ సెటప్ను అపరిమితంగా నిరీక్షించేలా చేయగలదు.

Apache HttpClient 5.3.1 కోసం, కనెక్షన్ మేనేజర్ డిఫాల్ట్లను సెట్ చేయండి:

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();

Apache HttpComponents 5 క్లాసులను org.apache.hc కింద ఉపయోగించి, Timeout తో core5 యుటిలిటీ ప్యాకేజీలో. క్లయింట్ను దాని పని కోసం ఉంచి మూసివేయండి. విడిగా ఉన్న పబ్లిక్ HTTP పరీక్ష కోసం, HTTP ప్రాక్సీ జాబితా నుండి ఒక అభ్యర్థి ఎండ్పాయింట్ను అందిస్తాడు; టైమౌట్లను పోల్చేటప్పుడు గమ్యాన్ని స్థిరంగా ఉంచండి.

పరిమితిపరిష్కరించిన నిరీక్షణ
కనెక్ట్ టైమౌట్కనెక్షన్ స్థాపన
సాకెట్ టైమౌట్CONNECT మార్పిడితో సహా డిఫాల్ట్ I/O నిష్క్రియత
పూల్ నుండి పొందడం / అప్లికేషన్ ప్రతిస్పందనవిడిగా కాన్ఫిగర్ చేసిన ఇతర దశలు

CONNECT తర్వాత, TLS తన సొంత సెటప్ పరిమితిని HttpClient 5 యొక్క TLS కాన్ఫిగరేషన్ ద్వారా అవసరం పడవచ్చు. నిష్క్రియత మరియు మొత్తం గడువు మధ్య కూడా తేడా చూపండి: అడపాదడపా వచ్చే బైట్లు లేదా పునరావృత ప్రామాణీకరణ మార్పిడులు మొత్తం సమయాన్ని పెంచగలవు. అప్లికేషన్ మద్దతు ఇచ్చే గడువు లేదా రద్దు విధానాన్ని ఉపయోగించండి మొత్తం ఆపరేషన్ కోసం ఒక బడ్జెట్.

సంబంధిత వ్యాసాలు