PHP သည် Web Development တွင်ကျယ်ကျယ်ပြန့်ပြန့်အသုံးပြုသော scripting language ဖြစ်ပြီးဒေတာဘေ့စ်အမျိုးမျိုးနှင့်အပြန်အလှန်ဆက်သွယ်မှုကိုအထောက်အကူပြုသည်။ သို့သော် PHP ကိုယ်တိုင်ကိုချည်မျှင်တစ်ခုဖြင့်အကောင်အထည်ဖော်မှုတစ်ခုဖြင့်ကွပ်ကဲသည်။
PHP ကို အခြေခံ. စွမ်းဆောင်ရည်မြင့်ကွန်ယက်ဆက်သွယ်ရေးမူဘောင်တစ်ခုအနေဖြင့် SWOPE သည်ပြတ်ပြတ်သားသားနှင့်ပိတ်ဆို့ခြင်းမဟုတ်သောကွန်ယက်ဆက်သွယ်ရေးလုပ်ဆောင်ချက်များကိုထောက်ပံ့ပေးသည်။ PHP သည်တစ်ပြိုင်တည်းပရိုဂရမ်ကိုထိရောက်စွာအကောင်အထည်ဖော်ရန်ခွင့်ပြုသည်။ SWOSE ၏အဓိကအစိတ်အပိုင်းများတွင်စွမ်းဆောင်ရည်မြင့်ကွန်ယက် 0 န်ဆောင်မှုများနှင့်အချိန်နှင့်တပြေးညီဆက်သွယ်ရေး applications များကိုတီထွင်ရန်အတွက်ဆာဗာများ, ဖောက်သည်များ,
စွမ်းဆောင်ရည်မြင့်သောတစ်ပြိုင်နက်တည်းအောင်မြင်ရန် SWOOLE extension ကို install လုပ်ရန်လိုအပ်သည်။ ၎င်းကိုအောက်ပါ command မှတဆင့် install လုပ်နိုင်သည်။
<span class="fun">sudo pecl swoole install</span>
တပ်ဆင်မှုပြီးဆုံးသွားသောအခါအောက်ပါအကြောင်းအရာများကို php.ini configuration file ထဲသို့ထည့်ရန်လိုအပ်သည်။
<span class="fun">extension = swoole.so</span>
Php.ini ကိုပြုပြင်ပြီးနောက် configurations အကျိုးသက်ရောက်မှုရှိစေရန် Web server သို့မဟုတ် Php-FPM လုပ်ငန်းစဉ်ကိုပြန်လည်စတင်ပါ။
Swoole ကိုအသုံးပြုပြီးတစ်ပြိုင်နက်တည်း applications များကိုတီထွင်ရန်ပထမခြေလှမ်းမှာဆာဗာဥပမာတစ်ခုဖန်တီးရန်ဖြစ်သည်။ အောက်ပါကုဒ်ဥပမာသည် HTTP ဆာဗာတစ်ခုကိုမည်သို့ဖန်တီးရမည်ကိုပြသသည်။
$http = new Swoole\Http\Server("127.0.0.1", 9501);
$http->on('request', function ($request, $response) {
$response->header('Content-Type', 'text/plain');
$response->end("Hello, World!\n");
});
$http->start();ဆာဗာသည် local port 9501 ကိုနားထောင်ပြီး "မင်္ဂလာပါကမ္ဘာ" ကိုပြန်ပို့သည်။ တောင်းဆိုချက်ကိုလက်ခံရရှိသည့်အခါ string ကို။
SWOSE ၏ Coroutine functine function သည်ပြတ်ပြတ်သော Code Community Code ကိုအလွန်ရိုးရှင်းစေသည်။ Corouttines သည်ပေါ့ပါးသည့်ချည်များဖြစ်ပြီးကွပ်မျက်ခံရစဉ်ကွပ်မျက်မှုတွင်တက်ကြွစွာထိန်းချုပ်နိုင်ပြီးအခြားအလုပ်များကိုအပြိုင်ဖြင့်ကွပ်မျက်ရန်ခွင့်ပြုသည်။ အောက်ပါဥပမာသည်အခြေခံ Coroutine အသုံးပြုမှုကိုပြသည်။
Co\run(function () {
$cid = Co::getCid();
echo "Coroutine ID: " . $cid . "\n";
Co::sleep(1);
echo "Coroutine ID: " . $cid . " exited\n";
});Code သည် Coroutine ကိုဖန်တီးသည်, Coroutine ID ကိုပုံနှိပ်ထုတ်ပြီးထွက်ပေါက်အချက်အလက်များကိုပုံနှိပ်ခြင်းမပြုမီဒုတိယစောင့်ဆိုင်းနေသည်။
PHP နှင့် SWOOLE ပေါင်းစပ်မြင့်မားသောစွမ်းဆောင်ရည်မြင့်တစ်ပြိုင်နက်တည်းဖွံ့ဖြိုးတိုးတက်မှုအတွက် PHP နှင့် SWOPE ကိုပေါင်းစပ်ခြင်းကတစ်ပြိုင်နက်တည်းလုပ်ဆောင်နိုင်သည့်စွမ်းရည်နှင့်တုန့်ပြန်မှုမြန်နှုန်းကိုတိုးတက်စေနိုင်သည်။ SWOOLE မှပေးသောပိတ်ဆို့ခြင်းမဟုတ်သောအင်္ဂါရပ်များနှင့် Coroutine အထောက်အပံ့များဖြင့် Developer များသည်ကွန်ရက် 0 န်ဆောင်မှုများနှင့်အချိန်မှန် applications များကိုပိုမိုထိရောက်စွာတည်ဆောက်နိုင်သည်။ အမှန်တကယ်စီမံကိန်းများအရ SWOOLE အစိတ်အပိုင်းများသည်ဆာဗာများ, client များ, timers များနှင့် coroutines များကဲ့သို့သောလိုအပ်ချက်များကိုလိုအပ်ချက်များနှင့်အညီပြောင်းလွယ်ပြင်လွယ်များကိုပြောင်းလွယ်ပြင်လွယ်စွာရွေးချယ်နိုင်သည်။