កំណត់ពេលវេលាសម្រាប់ប្រូកស៊ី Apache HttpClient 5 ដែលជាប់គាំងអំឡុង CONNECT
កំណត់ពេលវេលា 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 | ភាពមិនសកម្ម I/O លំនាំដើម រួមទាំងការផ្លាស់ប្តូរ CONNECT |
| ការទទួលពីអាង / ការឆ្លើយតបកម្មវិធី | ដំណាក់កាលផ្សេងទៀតដែលកំណត់ដោយឡែក |
បន្ទាប់ពី CONNECT TLS អាចត្រូវការដែនកំណត់រៀបចំផ្ទាល់ខ្លួនតាមរយៈការកំណត់ TLS របស់ HttpClient 5។ បែងចែកផងដែររវាងភាពមិនសកម្ម និងថ្ងៃកំណត់សរុប៖ បៃដែលដាច់ៗ ឬការផ្លាស់ប្តូរការផ្ទៀងផ្ទាត់ម្តងហើយម្តងទៀតអាចបន្ថែមពេលវេលាសរុប។ ប្រើគោលនយោបាយថ្ងៃកំណត់ ឬលុបចោលដែលកម្មវិធីគាំទ្រ ថវិកាមួយសម្រាប់ប្រតិបត្តិការទាំងមូល.