PHP中使用AMQP消息队列|LNMP
2013-08-10 15:42
537 查看
入队列: <?php //连接RabbitMQ $conn_args = array( 'host'=>'localhost' , 'port'=> '5672', 'login'=>'guest' , 'password'=> 'guest','vhost' =>'/'); $conn = new AMQPConnection($conn_args); $conn->connect(); //创建exchange名称和类型 $channel = new AMQPChannel($conn); $ex = new AMQPExchange($channel); $ex->setName('direct_exchange_name'); $ex->setType(AMQP_EX_TYPE_DIRECT); $ex->setFlags(AMQP_DURABLE | AMQP_AUTODELETE); $ex->declare(); //创建queue名称,使用exchange,绑定routingkey $q = new AMQPQueue($channel); $q->setName('queue_name'); $q->setFlags(AMQP_DURABLE | AMQP_AUTODELETE); $q->declare(); $q->bind('direct_exchange_name', 'routingkey_name'); //消息发布 $channel->startTransaction(); $message = json_encode(array('Hello World!','DIRECT')); $ex->publish($message, 'routingkey_name'); $channel->commitTransaction(); $conn->disconnect(); ?> 取队列: <?php //连接RabbitMQ $conn_args = array( 'host'=>'localhost' , 'port'=> '5672', 'login'=>'guest' , 'password'=> 'guest','vhost' =>'/'); $conn = new AMQPConnection($conn_args); $conn->connect(); //设置queue名称,使用exchange,绑定routingkey $channel = new AMQPChannel($conn); $q = new AMQPQueue($channel); $q->setName('queue_name'); $q->setFlags(AMQP_DURABLE | AMQP_AUTODELETE); $q->declare(); $q->bind('direct_exchange_name', 'routingkey_name'); //消息获取 $messages = $q->get(AMQP_AUTOACK) ; if ($messages){ var_dump(json_d ecode($messages->getBody(), true )); } $conn->disconnect(); ?>
相关文章推荐
- PHP中使用AMQP消息队列
- PHP的轻量消息队列php-resque使用说明
- [资源]PHP使用消息队列
- PHP中使用ActiveMQ实现消息队列
- PHP的Laravel框架中使用消息队列queue及异步队列的方法
- (五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版)
- php消息队列beanstalkd使用
- 使用PHP访问RabbitMQ消息队列
- PHP下使用Redis消息队列发布微博(复制)
- 使用PHP访问RabbitMQ消息队列
- PHP AMQP消息队列安装配置
- php 消息队列 rabbitmq 的安装使用
- PHP使用php-resque库配合Redis实现MQ消息队列的教程
- PHP中使用ActiveMQ实现消息队列
- 基于PHP使用rabbitmq实现消息队列
- PHP中使用ActiveMQ实现消息队列
- (五)RabbitMQ消息队列-安装amqp扩展并订阅/发布Demo(PHP版)
- PHP使用redis消息队列发布微博的方法示例
- 【PHP】消息队列httpsqs安装使用步骤
- debian(wheezy)安装rabbitMQ,php-amqp来支持消息队列.