WebSocket application များကိုတီထွင်သောအခါအချို့သောထိန်းချုပ်မှုမက်ဆေ့ခ်ျများကိုနောက်ခံ societ transmission မှတဆင့်လုပ်ငန်းများ၌ပြုလုပ်နိုင်သည်။ Metadata ကိုထုတ်လွှင့်ရန် Network Protocols တွင်ထိန်းချုပ်မှုမက်ဆေ့ခ်ျများကိုမကြာခဏအသုံးပြုသည်။ ဤထိန်းချုပ်မှုမက်ဆေ့ခ်ျများကိုထိရောက်စွာစီမံရန် Socket_cMsg_space function သည် PHP တွင်ကူညီနိုင်သည်။ ဤဆောင်းပါးသည် Socide_cMsg_space ကို မည်သို့အသုံးပြုရမည်ကိုရှင်းပြပါမည်။
connections, commonbeats စသဖြင့်ဆက်သွယ်မှုမက်ဆေ့ခ်ျများအသုံးပြုသည့်အခါဆက်သွယ်မှုမက်ဆေ့ခ်ျများကိုအသုံးပြုသောအခါ, waet_cmsg_space function ကို control frames များဖြင့်ဤမက်ဆေ့ခ်ျများကိုထုတ်လွှင့်သည်။ Socket_cMsg_space function သည်သင့်လျော်သောနေရာကိုဤထိန်းချုပ်မှုမက်ဆေ့ခ်ျများပြုလုပ်နိုင်ရန်အတွက်ယန္တရားတစ်ခုပေးသည်။
Socket_cMsg_space သည် Socket Control Messages ကိုကိုင်တွယ်ရန် PHP တွင်အသုံးပြုသော function တစ်ခုဖြစ်သည်။ developer များကထိန်းချုပ်မှုမက်ဆေ့ခ်ျကိုပေးပို့သည့်အခါသို့မဟုတ်လက်ခံသည့်အခါထိန်းချုပ်မှုမက်ဆေ့ခ်ျအတွက်လုံလောက်သောနေရာအလုံအလောက်ရှိမရှိစစ်ဆေးရန်ခွင့်ပြုသည်။ နေရာမလုံလောက်သောအမှားများကိုရှောင်ရှားရန်ဤလုပ်ဆောင်မှုကိုသုံးပါ။
လုပ်ဆောင်ချက်တစ်ခု၏အခြေခံ Syntax သည်အောက်ပါအတိုင်းဖြစ်သည် -
int socket_cmsg_space(int $level, int $type)
$ အဆင့် parameter သည်မက်ဆေ့ခ်ျ၏အဆင့်ကိုသတ်မှတ်သည်, များသောအားဖြင့် Sol_Socol သို့မဟုတ်အခြား protocol layer layer ကိုသတ်မှတ်သည်။
$ အမျိုးအစား parameter သည်မက်ဆေ့ခ်ျ၏အကြောင်းအရာသို့မဟုတ်ဒေတာဖွဲ့စည်းပုံနှင့်သက်ဆိုင်သောမက်ဆေ့ခ်ျအမျိုးအစားကိုသတ်မှတ်သည်။
ဤလုပ်ဆောင်ချက်သည်ထိန်းချုပ်မှုမက်ဆေ့ခ်ျ၏အာကာသအရွယ်အစားကိုဆုံးဖြတ်ရန်လိုအပ်သော Bytes အရေအတွက်ကိုပြန်လည်ရောက်ရှိစေသည်။
Socket_CMSG_SPACE ကိုအသုံးပြုပြီးထိန်းချုပ်မှုမက်ဆေ့ခ်ျများကိုထိရောက်စွာစီမံရန်အောက်ပါအဆင့်များကိုကျွန်ုပ်တို့အသုံးပြုနိုင်သည်။
ပထမ ဦး စွာ websocket server connection တစ်ခုဖန်တီးပါ။ ဆိုပါစို့ WE Websocket connection တစ်ခုကိုဖန်တီးထားပြီဆိုပါစို့။ PHP တွင်ရိုးရှင်းသောဥပမာတစ်ခုဖြစ်သည်။
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
socket_bind($socket, '0.0.0.0', 8080);
socket_listen($socket);
while ($client = socket_accept($socket)) {
$msg = socket_read($client, 1024);
// client မက်ဆေ့ခ်ျများဖြစ်စဉ်ကို
}
Websocket Message ကိုလက်ခံရရှိသည့်အခါကျွန်ုပ်တို့သည်ထိန်းချုပ်မှုမက်ဆေ့ခ်ျအတွက်နေရာအလုံအလောက်ခွဲဝေချထားပေးရန်လိုအပ်သည်။ socket_cmsg_space function မှတဆင့်လက်ရှိနေရာအလုံအလောက်ရှိမရှိစစ်ဆေးနိုင်သည်။
$controlMessageSize = socket_cmsg_space(SOL_SOCKET, 0);
if ($controlMessageSize >= 64) {
// လုံလောက်သောနေရာရှိသည်,သင်သည်ထိန်းချုပ်မှုမက်ဆေ့ခ်ျများကိုဆက်လက်လုပ်ဆောင်နိုင်သည်
$controlMessage = "Some control message";
socket_send($client, $controlMessage, strlen($controlMessage), 0);
} else {
// 没လုံလောက်သောနေရာရှိသည်,ချိန်ညှိလိုအပ်သည်
echo "Error: Not enough space for control message.";
}
WebScket applications များအနေဖြင့်ထိန်းချုပ်မှုမက်ဆေ့ခ်ျများအနေဖြင့်ပိတ်ခြင်းဆက်သွယ်မှုတောင်းဆိုမှုများ, ping / pong နှလုံးခုတ်လှူမှုကိုရှာဖွေတွေ့ရှိခြင်းစသည်တို့ပါဝင်နိုင်သည် ။
$controlMessage = "WebSocket ping"; // နမူနာထိန်းချုပ်မှုမက်ဆေ့ခ်ျကို
socket_send($client, $controlMessage, strlen($controlMessage), 0);
လက်တွေ့ကျသော application များအရ websocket server သည်ထိန်းချုပ်မှုအမျိုးမျိုးကိုလုပ်ဆောင်ရန်လိုအပ်နိုင်သည်။
Ping / Pong : ဆက်သွယ်မှုတက်ကြွမှုရှိမရှိစစ်ဆေးရန်အသုံးပြုခဲ့သည်။
Collow : ဆက်သွယ်မှုကိုပိတ်ရန်တောင်းဆိုခြင်း။
စာသား : စာသားမက်ဆေ့ခ်ျပို့ပါ။
Socket_CMSG_SPACE တွင် CONTERQUENT အမျိုးအစားတစ်ခုစီတွင်နေရာအလုံအလောက်ရှိပြီးနေရာမလုံလောက်သောခြွင်းချက်များကိုရှောင်ရှားရန်နေရာအလုံအလောက်ရှိနိုင်သည်။
ဤဆောင်းပါးမှတစ်ဆင့် Communter Message ကိုထိရောက်စွာစီမံရန် Websont application များရှိ Socket_CMSG_SPACE function ကိုမည်သို့အသုံးပြုရမည်ကိုလေ့လာသင်ယူခဲ့သည်။ ဤလုပ်ဆောင်ချက်သည်ကျွန်ုပ်တို့အားထိန်းချုပ်မှုမက်ဆေ့ခ်ျများအနေဖြင့်လုံလောက်သောနေရာမလုံလောက်ခြင်းရှိမရှိကိုစစ်ဆေးရန်သာမကကွန်ယက်ချိတ်ဆက်မှုများ၏တည်ငြိမ်မှုနှင့်ယုံကြည်စိတ်ချရမှုကိုတိုးတက်စေသည်။ websocket server ကိုအကောင်အထည်ဖော်သောအခါဤလုပ်ဆောင်မှုကိုအသုံးပြုပြီးဤလုပ်ဆောင်မှုကိုကျိုးကြောင်းဆီလျော်စွာအသုံးပြုခြင်းသည်မသင့်လျော်သောထိန်းချုပ်မှုမက်ဆေ့ခ်ျကိုစီမံခန့်ခွဲမှုကြောင့်ဖြစ်ပေါ်လာသောပြ problems နာများကိုထိရောက်စွာလျှော့ချနိုင်သည်။
သင် WebSound သို့မဟုတ် PHP Socke Programming အကြောင်းပိုမိုလေ့လာလိုပါကဤနေရာတွင်အချို့သောရည်ညွှန်းအရင်းအမြစ်များဖြစ်သည်။