HTTP တောင်းဆိုမှုများသည်တွား 0 င်စီမံကိန်းများအတွက်အလွန်များသောအားဖြင့်လုပ်ငန်းလည်ပတ်မှုများဖြစ်သည်။ အချက်အလက်အမြောက်အများကိုတွားသွားစဉ်အခါတိုင်းဆက်သွယ်မှုအသစ်တစ်ခုကိုအချိန်တိုင်းတည်ဆောက်ရန်လိုအပ်ပါကအထူးသဖြင့်ဝက်ဘ်ဆိုက်သည်တောင်းဆိုမှုများအပေါ်အချို့သောကြိမ်နှုန်းကန့်သတ်ချက်ရှိသည်ဆိုပါကအကျိုးသက်ရောက်နိုင်သည်။ ဤလုပ်ငန်းစဉ်ကိုပိုမိုကောင်းမွန်စေရန် connection ကိုအချိန်ကြာမြင့်စွာဖွင့်ရန်အထူးအရေးကြီးသည်။ PHP တွင်ကျွန်ုပ်တို့သည် connection ၏ဇွဲရှိခြင်းကိုဆက်လက်ထိန်းသိမ်းထားရန် curl_upkeep () နည်းလမ်းကိုသုံးနိုင်သည်။
curl_upkeep () သည် PHP ရှိ Hitl စာကြည့်တိုက်မှတစ်ဆင့် HTTP တောင်းဆိုမှုများကိုပို့သောအခါ currl_upkeep သည်ပုံမှန်အားဖြင့်ပိတ်ခြင်းမှတားဆီးရန်အသုံးပြုသည်။ Curl_upkeep () ကိုအသုံးပြုသောအခါ, စွမ်းဆောင်ရည်ကိုတိုးတက်စေရန်တောင်းဆိုသည့်အခါတိုင်းသင်တောင်းဆိုမှုတစ်ခုပို့သည့်အခါတိုင်းဆက်သွယ်မှုကိုပြန်လည်တည်ဆောက်ခြင်းကိုရှောင်ရှားနိုင်သည်။
PHP တွင် HTTP တောင်းဆိုမှုများကိုပြုလုပ်ရန် ဆံပင်ကောက်ကောက်ကို အသုံးပြုသောအခါပုံမှန်အားဖြင့် default connection ကိုကြုံတွေ့ရလေ့ရှိသည်။ ဆက်သွယ်မှုကိုပြန်လည်ထူထောင်ရန်တောင်းဆိုတိုင်းကျွန်ုပ်တို့တောင်းဆိုသည့်အချိန်တိုင်းတွင်သက်ဆိုင်ရာ parameters တွေကိုဆက်လုပ်ရန်လိုအပ်သည်။
Converse ကိုဖွင့်ထားရန် Curl_upkeep () ကို မည်သို့အသုံးပြုရမည်ကိုပြသသည့်ဥပမာတစ်ခုဖြစ်သည်။
<?php
function curl_upkeep($url)
{
$ch = curl_init();
// တည်ဆောက်သည်cURLရွေးချယ်စရာများ
curl_setopt($ch, CURLOPT_URL, $url); // စက်ကွင်းURL
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // တိုက်ရိုက် output ကိုအစားတုံ့ပြန်မှုအကြောင်းအရာပြန်ပို့
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // အလိုအလျောက်ခုန်ခွင့်ပြုပါ
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Connection: keep-alive", // ချိတ်ဆက်နေပါ
"Keep-Alive: 300", // တည်ဆောက်သည်超时时间,စက္ကန့်အတွင်းယူနစ်
));
// တည်ဆောက်သည်一个较长的超时,connection ကိုပိတ်ထားခြင်းမှရှောင်ကြဉ်ပါ
curl_setopt($ch, CURLOPT_TIMEOUT, 300); // တည်ဆောက်သည်请求超时时间为5မိနစ်
// ကရိယာတန်းဆာcURLတောင်းဆိုမှုနှင့်ရလဒ်များကိုရယူပါ
$response = curl_exec($ch);
if(curl_errno($ch)) {
echo 'Curl error: ' . curl_error($ch);
}
curl_close($ch);
return $response;
}
// အသုံးပြုcurl_upkeep()တောင်းဆိုမှုကိုလုပ်ပါ
$url = "https://m66.net/api/data"; // စက်ကွင်းURLအစားထိုးလိုက်ပါm66.net
$response = curl_upkeep($url);
echo $response;
?>
curl_init () : ဆံပင်ကောက်ကောက် session ကိုစတင်။
curl_setopt () : curlopt_Url က curlopt_url ကိုသတ်မှတ်ထားတဲ့ curlopt_ruturntransfer ကိုသတ်မှတ်ထားတဲ့ curlopt_ruturntransfer ကိုသတ်မှတ်ထားတဲ့ curlopt_ruturntransfer က Respection RediRection ကိုအလိုအလျောက်ပြန်ရောက်စေမည့်အစားတုံ့ပြန်ခြင်းအကြောင်းအရာပြန်ဖွင့်ခြင်းကိုပြုလုပ်သည်။
ဆက်သွယ်မှုကိုဆက်လုပ်ပါ - ဆက်နွယ်မှုမှတစ်ဆင့်ဆက်ရှင်သန်နေခြင်း နှင့် ရှင်သန်နေသောစောင့် ရှောက်မှုခေါင်းစီးသည်ဆက်နွယ်မှုကိုဖော်ပြပါ။
TIMEOUT Setting - ဆာဗာမှပိတ်ထားသောဆက်သွယ်မှုကိုရှောင်ရှားရန်အချိန်ကြာမြင့်စွာသတ်မှတ်ရန် curlopt_timeout parameter ကိုသုံးပါ။
တွားမြင်ကွင်းတွင်ဆက်သွယ်မှုများမကြာခဏတည်ထောင်ခြင်းနှင့်ပိတ်ခြင်းသည်မလိုအပ်သော overhead ကိုတိုးပွားစေပြီးထိရောက်မှုကိုလျော့နည်းစေသည်။ ချိတ်ဆက်နေခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်လုပ်နိုင်သည် -
စွမ်းဆောင်ရည်တိုးတက်စေရန်အတွက် တည်ရှိမှုအသစ်ကိုအချိန်တိုင်းဆက်နွယ်မှုမရှိစေရန်မလိုဘဲတည်ဆဲ connection များကိုပြန်လည်သုံးသပ်ပါ။
တားမြစ်ထားခြင်း မပြုပါနှင့် ဆက်သွယ်မှုကိုစောင့်ရှောက်ခြင်းအားဖြင့်ဆက်သွယ်မှုအရေအတွက်ကိုလျှော့ချနိုင်ပြီးတွားတတ်သောတွားလွယ်ယန္တရားကိုအစပျိုးနိုင်သည်။
အရင်းအမြစ်များကိုသိမ်းဆည်းပါ ။ ဆက်သွယ်မှုတစ်ခုတည်ဆောက်ခြင်းသည်အချိန်နှင့်အရင်းအမြစ်များကိုလိုအပ်သည်။ ဆက်သွယ်မှုကိုထိန်းသိမ်းခြင်းသည်ဆာဗာနှင့် client ပေါ်တွင်ကွန်ပျူတာအရင်းအမြစ်များကိုသိမ်းဆည်းရန်ကူညီသည်။
အချိန်ကုန် - သင့်လျော်သောအချိန်ကုန်ကိုသတ်မှတ်ရန်အလွန်အရေးကြီးသည်။ အကယ်. အချိန်ကုန်ကိုကြာမြင့်စွာသတ်မှတ်ထားပါက၎င်းသည်တောင်းဆိုမှုကိုရှည်လျားစွာဆွဲထားရန်ဖြစ်နိုင်သည်။ ယေဘုယျအားဖြင့်ပြောရလျှင်အမှန်တကယ်လိုအပ်ချက်များနှင့်အညီသင့်တင့်သောအချိန်ကုန်ကိုသတ်မှတ်ရန်အကြံပြုသည်။
ဆက်သွယ်မှုကန့်သတ်ချက်များ - အချို့သောဆာဗာများသည် (ထိုကဲ့သို့သောဆက်သွယ်မှုအများဆုံးအရေအတွက်) (ထိုကဲ့သို့သောဆက်သွယ်မှုအများဆုံးအရေအတွက်) နှင့်ဆက်နွယ်သောဆက်သွယ်မှုအချို့ကိုကန့်သတ်ထားနိုင်သည်။
ဆာဗာပံ့ပိုးမှု - ဆာဗာများအားလုံးသည်အချိန်ကြာမြင့်စွာဆက်နေနေရန်မထောက်ပံ့ပါ။ Keep- ရှင်သန်ခြင်းကို အသုံးပြုသောအခါ Target Server သည်ဤအင်္ဂါရပ်ကိုထောက်ပံ့ကြောင်းအတည်ပြုရန်သေချာပါစေ။