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 ဖွဲ့စည်းမှုမှတစ်ဆင့် ၎င်း၏ကိုယ်ပိုင် တည်ဆောက်မှု ကန့်သတ်ချက် လိုအပ်နိုင်သည်။ မလှုပ်ရှားမှုနှင့် စုစုပေါင်း သတ်မှတ်ရက်ကိုလည်း ခွဲခြားပါ: ပြတ်တောင်းသော ဘိုက်များ သို့မဟုတ် ထပ်ခါတလဲလဲ စစ်မှန်ကြောင်း အတည်ပြုခြင်း ဖလှယ်မှုများက စုစုပေါင်းအချိန်ကို ရှည်စေနိုင်သည်။ အက်ပ်က ပံ့ပိုးသော သတ်မှတ်ရက် သို့မဟုတ် ပယ်ဖျက်ရေး မူဝါဒကို အသုံးပြုပါ လုပ်ငန်းတစ်ခုလုံးအတွက် ဘတ်ဂျက်တစ်ခု.