အထူးသဖြင့်တစ်ပြိုင်နက်တည်းတောင်းဆိုမှုများကိုကိုင်တွယ်သည့်မြင်ကွင်းတွင်အထူးသဖြင့် HTTP ဆက်သွယ်မှုများကိုထိရောက်စွာစီမံခန့်ခွဲခြင်းနှင့်အကောင်းမြင်ခြင်းတို့သည်စွမ်းဆောင်ရည်မြင့်မားသောကဏ် aspects တစ်ခုဖြစ်လာနိုင်ပုံနှင့်အကောင်းမြင်မှု၏အရေးကြီးသောကဏ် aspect တစ်ခုဖြစ်လာနိုင်ပုံတွင်အထူးပြုလုပ်နိုင်သည်။ အထူးသဖြင့် PHP ကိုကွန်ယက်တောင်းဆိုမှုများအတွက် PHP ကိုအသုံးပြုသောအခါ Curl စာကြည့်တိုက်သည်အသုံးအများဆုံးကိရိယာတစ်ခုဖြစ်သည်။ ထိရောက်သောဆက်သွယ်မှုကိုင်ဆောင်ထားသည့်နည်းပညာ, Curl_upkeep () function သည် curl_upkeep () function သည်ကွန်ယက်တောင်းဆိုမှုများ၏စွမ်းဆောင်ရည်ကိုပိုမိုကောင်းမွန်အောင်ပြုလုပ်နိုင်သည်။ ဤဆောင်းပါးသည် optimization အတွက် curl_upkeep () function ကိုမည်သို့အသုံးပြုရမည်ကိုမိတ်ဆက်ပေးပြီး,
HTTP protocol တွင်တောင်းဆိုမှုတစ်ခုပြုလုပ်သည့်အခါတိုင်း client နှင့် server အကြား TCP ဆက်သွယ်မှုအသစ်ကိုတည်ထောင်သည်။ အစဉ်အလာအရတောင်းဆိုမှုတစ်ခုစီနှင့်ဆက်သွယ်မှုကိုပြန်လည်တည်ဆောက်ခြင်းသည်အထူးသဖြင့်တစ်ပြိုင်နက်တည်းက concurnencency အခြေအနေများတွင်အထူးသဖြင့်ဆက်သွယ်မှုကိုတည်ဆောက်ခြင်းနှင့်ဖျက်ဆီးခြင်းသည်စနစ်၏စွမ်းဆောင်ရည်ကိုအလွန်အကျိုးသက်ရောက်နိုင်သည်။
ဤ overhead ကိုရှောင်ရှားရန် HTTP / 1.1 သည် connection retention (ensement connections) နှင့်ရှည်လျားသောဆက်သွယ်မှုများဟုလည်းလူသိများ) မိတ်ဆက်ပေးသည်။ Connection Hold ကိုအသုံးပြုခြင်းအားဖြင့် client များနှင့်ဆာဗာများသည်ဆက်သွယ်မှုအသစ်များကိုမကြာခဏတည်ဆောက်ရန်မလိုဘဲဆက်သွယ်မှုတစ်ခုတည်းတွင်တောင်းဆိုမှုများကိုလုပ်ဆောင်နိုင်သည်။ PHP ရှိ Curl စာကြည့်တိုက်သည် connection retention ကိုထောက်ပံ့ခြင်း၏ function ကိုထောက်ပံ့ပေးသည်။
0 တ်ထုဆိုင်ရာပတ် 0 န်းကျင်တွင်မကြာခဏတည်ထောင်ခြင်းနှင့်အဆက်ဖြတ်ခြင်းတို့သည်စနစ်အရင်းအမြစ်များကိုစားသုံးပြီးတောင်းဆိုမှုကိုနှောင့်နှေးစေမည်။ Connection Retention ကိုလျှော့ချခြင်းအားဖြင့်ကျွန်ုပ်တို့သည် TCP ဆက်သွယ်မှုများကိုတည်ထောင်ခြင်းနှင့်ပိတ်ခြင်းကိုလျှော့ချခြင်း, ၎င်းသည်လျင်မြန်စွာတုန့်ပြန်ရန်လိုအပ်သောအကြီးစား 0 က်ဘ်အပလီကေးရှင်းများအတွက်အလွန်အရေးကြီးသည်, အထူးသဖြင့်တောင်းဆိုမှုများသည်အလွန်ကြီးမားသည်,
PHP မှ curl_upkeep () function သည် curl ၏ဇာတိ function မဟုတ်ပါ, သို့သော်သင့်လျော်သောဆက်သွယ်မှုကိုင်ဆောင်ထားသည့်မဟာဗျူဟာများနှင့်အလားတူလုပ်ဆောင်ချက်များကိုတုပရန် curl ၏လုပ်ဆောင်ချက်များကိုသုံးနိုင်သည်။ curl_upkeep () function ၏အဓိကရည်ရွယ်ချက်မှာ HTTP ဆက်သွယ်မှုများကိုဆက်တိုက်ဆက်သွယ်မှုပြန်လည်တည်ဆောက်ရေးကိုလျှော့ချရန်တောင်းဆိုမှုများအကြားဆက်သွယ်မှုကိုဆက်လက်တည်မြဲစေရန်ဖြစ်သည်။
Connection retention ကိုအကောင်းမြင်စေသောကုဒ်ဥပမာတစ်ခု
<?php
// ဖြစ်ပေါ်လာခြင်း cURL ရုံးထိုင်အချိန်ကာလ
$ch = curl_init();
// တည်ဆောက်သည် cURL ရွေးချယ်စရာများ
curl_setopt($ch, CURLOPT_URL, 'https://m66.net/api/v1/resource'); // စက်ကွင်း URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // တိုက်ရိုက် output ကိုအစားအကြောင်းအရာပြန်သွားပါ
curl_setopt($ch, CURLOPT_HEADER, false); // အဘယ်သူမျှမ header သတင်းအချက်အလက် output ကိုမျှ
curl_setopt($ch, CURLOPT_TIMEOUT, 10); // တည်ဆောက်သည်超时时间
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // ခွင့်ပြု cURL redirection ကိုလိုက်နာပါ
// ဆက်သွယ်မှုကိုဖွင့်ပါ(သွား HTTP Keep-Alive)
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Connection: keep-alive', // တည်ဆောက်သည်连接保持
'Keep-Alive: timeout=5, max=100' // ဆက်သွယ်မှုအချိန်ကုန်များနှင့်အများဆုံးတောင်းဆိုမှုများကိုကိုင်ထားပါ
));
// ကရိယာတန်းဆာ cURL မေးမြန်း
$response = curl_exec($ch);
// 检查မေးမြန်း是否成功
if(curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
} else {
echo 'Response: ' . $response;
}
// ရုပ်သိမ်းခြင်း cURL ရုံးထိုင်အချိန်ကာလ
curl_close($ch);
?>
curl_init () curl_init () ကို curl_init () ကို curl_init () ကိုအသုံးပြုသည်။
တောင်းဆိုမှုကို URL ကိုသတ်မှတ်ပါ ။ Curl_setopt () ကိုအသုံးပြုပါ။ ဤနေရာတွင်ကျွန်ုပ်တို့သည်လိုအပ်ချက်များနှင့်ကိုက်ညီရန် M66.net ဖြင့် URL domain name ကိုအစားထိုးသည်။
Set Curl options များ - ကျွန်ုပ်တို့သည်တိုက်ရိုက်ထွက်ရှိမည့်အစားပြန်လာသည့်ရလဒ်များ, Header Information Output ကို disable လုပ်ရန်နှင့်အချိန်ကုန်အချိန်သတ်မှတ်ခြင်းကဲ့သို့သောဘုံရွေးချယ်စရာများကိုသတ်မှတ်ထားသည်။
ချိတ်ဆက်ပါ - HTTP Header Information Connection Setting: Keep- ရှင်သန်နေခြင်း နှင့် ရှင်သန်ခြင်း တို့ကဆာဗာကိုဆက်ပြီးပြန်လည်အသုံးပြုခြင်းနှင့်ပြန်လည်အသုံးပြုခြင်းနှင့်အမြင့်ဆုံးအမြင့်ဆုံးစေရန်။
Response မှတောင်းဆိုမှုနှင့်လုပ်ငန်းစဉ်ကို တုန့်ပြန်ခြင်းကိုလုပ်ဆောင်ပါ ။ အမှားအယွင်းတစ်ခုဖြစ်ပြီးအမှားတစ်ခုရှိမရှိစစ်ဆေးရန် Curl_errno () ကို ကျွန်ုပ်တို့အသုံးပြုသည်။
Close Session : တောင်းဆိုမှုကိုပြီးဆုံးပြီးနောက် curl_close () ကို curl_close () ကိုပိတ်ရန်နှင့်အရင်းအမြစ်များကိုဖြန့်ချိရန်ဖုန်းဆက်ပါ။
HTTP Keep-Live အသက်ရှင်လျက်သည် TCP ဆက်သွယ်မှုကို client နှင့် server အကြားတူညီစွာပြန်လည်သုံးသပ်ခြင်းကိုခွင့်ပြုသည်။ ၎င်းသည်တစ်ပြိုင်နက်တည်းတစ်ပြိုင်နက်တည်းပတ်ဝန်းကျင်တွင်အထူးအရေးကြီးသည်, ဘာဖြစ်လို့လဲဆိုတော့၎င်းသည်တောင်းဆိုမှုတိုင်းအတွက်ဆက်သွယ်မှုအသစ်တစ်ခုကိုဖန်တီးသောစွမ်းဆောင်ရည်မြှင့်တင်မှုများကိုရှောင်ရှားသောကြောင့်ဖြစ်သည်။
အထက်ဖော်ပြပါကုဒ်များတွင် Connection: Live-Live နှင့် Keep - Live: 5, 5. Curl_seteSt (1) သည် 5 စက္ကန့်အတွင်းဆက်သွယ်မှုကိုတက်ကြွစွာနှင့်အဆက်အသွယ်ပေါင်း 100 အထိချိတ်ဆက်ရန်ကြိုးစားလိမ့်မည်။ ၎င်းသည်တူညီသောဆာဗာကိုမကြာခဏတောင်းခံသည့် application အခြေအနေများအတွက်အလွန်အထောက်အကူပြုသည်။
တစ်ပြိုင်နက်တည်းတစ်ပြိုင်နက်တည်းပတ်ဝန်းကျင်တွင် connection retention ကိုပိုကောင်းအောင်ပြုလုပ်ခြင်းသည်စနစ်စွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်အဓိကအချက်များအနက်မှတစ်ခုဖြစ်သည်။ currl တောင်းဆိုမှုများတွင် connection holding လုပ်ခြင်းအားဖြင့်ဆက်သွယ်မှုပြန်လည်တည်ဆောက်ရေး၏ overhead ကိုလျှော့ချခြင်းအားဖြင့် sinnart ကိုထိထိရောက်ရောက်လျှော့ချနိုင်ပြီး system throughput ကိုတိုးတက်စေနိုင်သည်။ curl_upkeep () function သည် curl ၏ဇာတိ function မဟုတ်သော်လည်း,
ဤဆောင်းပါးသည်သင့်အားတစ်ပြိုင်နက်တည်း curl curr ကိုထိန်းသိမ်းထားခြင်းများကိုမည်သို့ထိန်းသိမ်းရမည်ကိုပိုမိုကောင်းမွန်သောနားလည်မှုကိုပိုမိုနားလည်ရန်မည်သို့နားလည်ရမည်ကိုပိုမိုနားလည်ရန်ကူညီပေးပါ။ သင့်တွင်မေးခွန်းများရှိပါက ကျေးဇူးပြု. ဆွေးနွေးရန်စာတစ်စောင်ထားခဲ့ပါ။