標籤:基於 rac tor sum ima start exit ctr tags
1.從github上面擷取AMQP基於php的實現擴充
2.建立生產者 send.php
1 require(__DIR__ . ‘/../protected/vendor/autoload.php‘); 2 3 use PhpAmqpLib\Connection\AMQPStreamConnection; 4 use PhpAmqpLib\Message\AMQPMessage; 5 6 7 $connection = new AMQPStreamConnection(‘192.168.38.129‘, 5672, ‘fanwq‘, ‘ysq‘); 8 $channel = $connection->channel(); 9 $channel->queue_declare(‘hello‘, false, false, false, false);10 11 $msg = new AMQPMessage($i.‘-Hello World! --‘ . $_SERVER[‘SSH_CONNECTION‘]);12 $channel->basic_publish($msg, ‘‘, ‘hello‘);13 echo " [{$i}] Sent ‘Hello World!‘\n";14 $channel->close();15 $connection->close();View Code
3.建立消費者 receive.php
1 require(__DIR__ . ‘/../protected/vendor/autoload.php‘); 2 3 use PhpAmqpLib\Connection\AMQPStreamConnection; 4 use PhpAmqpLib\Message\AMQPMessage; 5 6 $connection = new AMQPStreamConnection(‘192.168.38.129‘, 5672, ‘fanwq‘, ‘ysq‘); 7 $channel = $connection->channel(); 8 9 $channel->queue_declare(‘hello‘, false, false, false, false);10 echo ‘ [*] Waiting for messages. To exit press CTRL+C‘, "\n";11 $callback = function($msg) {12 echo " [x] Received ", $msg->body, "\n";13 };14 15 $channel->basic_consume(‘hello‘, ‘‘, false, true, false, false, $callback);16 17 while(count($channel->callbacks)) {18 $channel->wait();19 }View Code
4.在cli模式下 分別執行 send.php receive.php 可以看到如下:
說明生產 消費端均ok。
5.管理 查看隊列訊息:安裝rabbitmq_management外掛程式
【5-1】查看當前可用外掛程式:
【5-2】 安裝啟用 rabbitmq_management外掛程式
【5-3】進入rabbitmq_management管理端:http://192.168.38.129:15672/
【5-4】 guest使用者沒有許可權 需要授權
rabbitmqctl set_user_tags guest monitoring
rabbitmqctl set_user_tags guest management
【5-5】登陸成功
基於PHP使用rabbitmq實現訊息佇列