CONNECT учурунда тыгылып калган Apache HttpClient 5 проксиси үчүн убакыт чеги
Туннель орнотуу үчүн туташуу менеджеринин socket I/O убакыт чегин өзүнчө TCP туташуу чеги менен кошо коюңуз.
Прокси 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 проксилер тизмеси нен талапкер акыркы чекитти берет; убакыт чектерин салыштырганда багыттоону туруктуу кармаңыз.
| Чек | Чечилген күтүү |
|---|---|
| Туташуу чеги | Туташууну орнотуу |
| Socket чеги | CONNECT алмашуусун кошкондо демейки I/O аракетсиздиги |
| Пулдан алуу / колдонмо жообу | Өзүнчө конфигурацияланган башка баскычтар |
CONNECT кийин TLS өзүнүн орнотуу чегин HttpClient 5тин TLS конфигурациясы аркылуу талап кылышы мүмкүн. Ошондой эле аракетсиздикти жалпы мөөнөттөн ажыратыңыз: үзүлгөн байттар же кайталанма аутентификация алмашуулары жалпы убакытты узартышы мүмкүн. Колдонмонун колдоого алынган мөөнөт же жокко чыгаруу саясатын колдонуңуз бүт операция үчүн бир бюджет.