RabbitMQ သည်စွမ်းဆောင်ရည်မြင့်မားပြီးယုံကြည်စိတ်ချရသောမက်ဆေ့ခ်ျကိုတန်းစီစနစ်ဖြစ်သည်။ PHP နှင့်အတူပေါင်းစပ်လူကြိုက်များ server-side scripting language, မက်ဆေ့ခ်ျထုတ်ဝေခြင်းနှင့် subscription ၏လုပ်ဆောင်ချက်များကိုအလွယ်တကူအကောင်အထည်ဖော်နိုင်သည်။ ဤဆောင်းပါးသည် PHP နှင့် RabbitMQ ၏ပေါင်းစည်းမှုကိုပြီးစီးရန်သင့်အားစာတိုပေးပို့ရေးယန္တရားကိုလျင်မြန်စွာတည်ဆောက်ရန်ကူညီရန်ရှင်းလင်းသောနမူနာကုဒ်များဖြင့်သင့်အားကူညီရန်သင့်အားယူပါလိမ့်မည်။
ပထမ ဦး စွာဆာဗာတွင် RabbitMQ ကိုထည့်သွင်းရန်လိုအပ်သည်။ တရားဝင်စာရွက်စာတမ်းများအရ installation package ကို for download လုပ်. RabbitMQ ၏တရားဝင်ဝက်ဘ်ဆိုက်ကိုသင်သွားနိုင်ပြီး installation နှင့် basic configuration ကိုအပြီးသတ်နိုင်သည်။
PHP တွင် RabbitMQ operating amm အမျိုးအစား extension ကိုအသုံးပြုခြင်းလိုအပ်သည်။ extension ကို install လုပ်နိုင်သည်။
<span class="fun">sudo apt-get install php-amqp ထည့်သွင်းပါ</span>
RabbitMQ ဆာဗာကိုဆက်သွယ်သောအခါသက်ဆိုင်ရာဆက်သွယ်ရေးသတ်မှတ်ချက်များကို configure လုပ်ရန်လိုအပ်သည်။ အောက်ပါဥပမာသည် default local connection configuration ကိုအသုံးပြုသည်။
$connection = new AMQPConnection([
'host' => 'localhost',
'port' => '5672',
'vhost' => '/',
'login' => 'guest',
'password' => 'guest'
]);
RabbitMQ တွင်မက်ဆေ့ခ်ျများကိုသတ်မှတ်ထားသောတန်းစီသို့လဲလှယ်နိုင်သည်။ ငွေလဲလှယ်မှုသည်မက်ဆေ့ခ်ျဖြန့်ဝေခြင်းအတွက်တာ 0 န်ရှိသည်။
အောက်ပါဥပမာသည် test_exchange နှင့် test_queue ဟုခေါ်သောဖလှယ်မှုကိုကြေငြာသည်။
$channel = $connection->channel();
<p>$channel->exchange_declare('test_exchange', 'fanout', false, false, false);</p>
<p>list($queue_name, ,) = $channel->queue_declare('test_queue', false, false, true, false);</p>
<p>$channel->queue_bind($queue_name, 'test_exchange');
ယခုအခါမက်ဆေ့ခ်ျများထုတ်ဝေရန်နှင့်သတ်မှတ်ထားသောတန်းစီမှတစ်ဆင့်စာရင်းသွင်းခြင်းနှင့်သုံးစွဲခြင်းနှင့်သုံးစွဲခြင်း။ ဥပမာများမှာအောက်ပါအတိုင်းဖြစ်သည် -
$message = 'Hello, RabbitMQ!';
<p>$channel->basic_publish(<br>
new AMQPMessage($message),<br>
'test_exchange',<br>
''<br>
);</p>
<p>echo " [x] Sent '$message'\n";</p>
<p>$channel->basic_consume(<br>
$queue_name,<br>
'',<br>
false,<br>
true,<br>
false,<br>
false,<br>
function($msg) {<br>
echo ' [x] Received ', $msg->body, "\n";<br>
}<br>
);</p>
<p>while (count($channel->callbacks)) {<br>
$channel->wait();<br>
}
အထက်ပါကုဒ်ကို php file တစ်ခုအနေဖြင့် PHP ဖိုင်တစ်ခုအနေဖြင့်သိမ်းဆည်းပါ။ Enterinal မှတဆင့်ဖွင့်ပါ။
<span class="fun">php ဥပမာဥပမာ .php</span>
မက်ဆေ့ခ်ျထုတ်ဝေခြင်းနှင့်ကြေးပေးသွင်းခြင်း၏ရလဒ်ကိုသင်တွေ့နိုင်သည်။
ဤဆောင်းပါးသည် PHP နှင့် RabbitMQ ကိုမည်သို့ပေါင်းစပ်ညှိနှိုင်းရမည်ကိုမိတ်ဆက်ပေးသည်။ RabbitMQ ၏စွမ်းဆောင်ရည်မြင့်မားသော Messice System System ၏အကူအညီဖြင့် PHP application များသည်ရှုပ်ထွေးသောဖြန့်ဝေသောစနစ်များအတွက်ခိုင်မာသောအုတ်မြစ်ချရန်ပြောင်းလွယ်ပြင်လွယ်။ ယုံကြည်စိတ်ချရသောစာတိုပေးပို့ရေးကိုရရှိနိုင်သည်။