OkHttp-erőforrások újrafelhasználása másik proxy kiválasztásakor
Válasszon proxyval konfigurált OkHttp klienst a hívás létrehozása előtt, és értse meg, mit oszt meg a newBuilder.
Az OkHttp-kérésnek nincs általános, módosítható proxy mezője. A hívás létrehozása előtt válassza ki a kívánt útvonalú klienst.
Ha a konfiguráció többi részének megosztottnak kell maradnia, származtassa az útvonalazott klienst egy meglévő kliensből:
OkHttpClient routed = baseClient.newBuilder()
.proxy(new Proxy(Proxy.Type.HTTP,
new InetSocketAddress("203.0.113.10", 8080)))
.build();A végpont csak szemléltetés. A HTTP proxy listából származó nyilvános HTTP-végpontok kitölthetik ezt a socket-címet egy engedélyezett közszolgálati útvonalhoz, feltéve, hogy az alapkliens szabályzata nem ad proxy-hitelesítő adatokat az új végpontnak. Az OkHttp dokumentálja, hogy a newBuilder megosztja a kapcsolatkészlet- és szál-erőforrásokat az eredeti klienssel. Ez nem jelenti azt, hogy az egyik proxyn keresztül létrehozott socket másik útvonalként átcímkézhető. A kapcsolat alkalmassága továbbra is az útvonal- és címkonfigurációtól függ.
Ismétlődő munkához tartson fenn korlátozott klienshalmazt, amelyet a valóban szükséges útvonalazási szabályzat szerint kulcsolt. Kerülje azt a korlátlan térképet, amelynek kulcsai minden valaha megfigyelt ideiglenes fiókot vagy proxyvariációt tartalmaznak.
Az erőforrások megosztása a leállítást is érinti. Egy megosztott gyorsítótár lezárása vagy egy megosztott diszpécser leállítása hatással lehet más, ezeket az erőforrásokat használó származtatott kliensekre. Adjon az erőforrás-tulajdonlásnak világos, alkalmazásszintű élettartamot ahelyett, hogy minden származtatott klienst különálló hálózati veremként kezelne.
Végül foglalja bele a kiválasztott proxy azonosítóját a hívás saját metaadataiba. Egy globális „utoljára kiválasztott proxy” változó nem tudja azonosítani több egyidejű kérés útvonalát.