本文实例讲述了php实现通过stomp协议连接ActiveMQ操作。分享给大家供大家参考,具体如下:
前面介绍了php ActiveMQ的安装与使用,这里再来讲述一下php通过stomp协议连接ActiveMQ。
一、安装php的stomp扩展
http://pecl.php.net/package/stomp
如:stomp-2.0.0.tgz
> tar xf stomp-1.0.9.tgz > cd stomp-1.0.9 > /data/php56/bin/phpize > ./configure --with-php-config=/data/php56/bin/php-config > make && make install
修改php.ini文件
> vi /data/php56/lib/php.ini
注意这里php环境的扩展路径(请自行修改)
extension_dir = "/data/php56/lib/php/extensions/no-debug-zts-20131226/" extension=stomp.so
查看扩展是否安装成功
> /data/php56/bin/php -m|grep Stomp
二、使用stomp扩展连接ActiveMQ
我们通过http://192.168.1.222:8161/admin/后台创建一个队列test测试。
并在该test队列中发送一条消息
然后我们通过php获取该队列中的消息,代码如下:
<?php try { //61613默认的端口,在ActiveMQ目录conf/activemq.xml文件可查看 $stomp = new Stomp('tcp://192.168.1.222:61613'); } catch (StompException $e) { die('error: ' . $e->getMessage()); } //订阅一个消息队列 $stomp->subscribe('/queue/test'); //读取队列 $frame = $stomp->readFrame(); //输出消息体内容 echo $frame->body, PHP_EOL;
运行上面的代码
> /data/php56/bin/php 1.php
希望本文所述对大家PHP程序设计有所帮助。