php实现通过stomp协议连接ActiveMQ操作示例

时间:2021-08-23 16:36:16

本文实例讲述了php实现通过stomp协议连接ActiveMQ操作。分享给大家供大家参考,具体如下:

前面介绍了php ActiveMQ的安装与使用,这里再来讲述一下php通过stomp协议连接ActiveMQ。

一、安装php的stomp扩展

  1. http://pecl.php.net/package/stomp

如:stomp-2.0.0.tgz

  1. > tar xf stomp-1.0.9.tgz
  2. > cd stomp-1.0.9
  3. > /data/php56/bin/phpize
  4. > ./configure --with-php-config=/data/php56/bin/php-config
  5. > make && make install

修改php.ini文件

  1. > vi /data/php56/lib/php.ini

注意这里php环境的扩展路径(请自行修改)

  1. extension_dir = "/data/php56/lib/php/extensions/no-debug-zts-20131226/"
  2. extension=stomp.so

查看扩展是否安装成功

  1. > /data/php56/bin/php -m|grep Stomp

二、使用stomp扩展连接ActiveMQ

我们通过http://192.168.1.222:8161/admin/后台创建一个队列test测试。

php实现通过stomp协议连接ActiveMQ操作示例

并在该test队列中发送一条消息

php实现通过stomp协议连接ActiveMQ操作示例

然后我们通过php获取该队列中的消息,代码如下:

  1. <?php
  2. try {
  3. //61613默认的端口,在ActiveMQ目录conf/activemq.xml文件可查看
  4. $stomp = new Stomp('tcp://192.168.1.222:61613');
  5. } catch (StompException $e) {
  6. die('error: ' . $e->getMessage());
  7. }
  8.  
  9. //订阅一个消息队列
  10. $stomp->subscribe('/queue/test');
  11. //读取队列
  12. $frame = $stomp->readFrame();
  13. //输出消息体内容
  14. echo $frame->body, PHP_EOL;

运行上面的代码

  1. > /data/php56/bin/php 1.php

php实现通过stomp协议连接ActiveMQ操作示例

希望本文所述对大家PHP程序设计有所帮助。

原文链接:https://www.cnblogs.com/jkko123/p/6685728.html