使用brew安装软件非常便捷,如下命令:
brew install rabbitmq
安装好后启动rabbitmq:
brew services start rabbitmq
查看下进程
管理后台地址:http://localhost:15672/
默认账号:guest 密码:guest
登陆后页面:
简单的php使用样例:
composer安装库
composer install php-amqplib/php-amqplib
send.php
<?php require_once __DIR__ . '/vendor/autoload.php'; use PhpAmqpLibConnectionAMQPStreamConnection; use PhpAmqpLibMessageAMQPMessage; $connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest'); $channel = $connection->channel(); $channel->queue_declare('hello', false, false, false, false); for ($i=0;$i<3;$i++){ //发送三条消息 $m = 'Hello World! time now:'.date("H:i:s",time())." ".$i; $msg = new AMQPMessage($m); $channel->basic_publish($msg, '', 'hello'); echo $m." "; } $channel->close(); $connection->close();
receive.php
<?php require_once __DIR__ . '/vendor/autoload.php'; use PhpAmqpLibConnectionAMQPStreamConnection; $connection = new AMQPStreamConnection('localhost', 5672, 'guest', 'guest'); $channel = $connection->channel(); $channel->queue_declare('hello', false, false, false, false); echo " [*] Waiting for messages. To exit press CTRL+C "; $callback = function ($msg) { echo ' [x] Received ', $msg->body, " "; }; $channel->basic_consume('hello', '', false, true, false, false, $callback); while ($channel->is_consuming()) { $channel->wait(); } $channel->close(); $connection->close();
先启动接收进程 php receive.php,启动后进程挂起
再执行发送消息 php send.php
测试效果图