本文實(shí)例講述了php實(shí)現(xiàn)通過(guò)stomp協(xié)議連接ActiveMQ操作。分享給大家供大家參考,具體如下:
前面介紹了php ActiveMQ的安裝與使用,這里再來(lái)講述一下php通過(guò)stomp協(xié)議連接ActiveMQ。
一、安裝php的stomp擴(kuò)展
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環(huán)境的擴(kuò)展路徑(請(qǐng)自行修改)
extension_dir = "/data/php56/lib/php/extensions/no-debug-zts-20131226/"
extension=stomp.so
查看擴(kuò)展是否安裝成功
> /data/php56/bin/php -m|grep Stomp
二、使用stomp擴(kuò)展連接ActiveMQ
我們通過(guò)http://192.168.1.222:8161/admin/后臺(tái)創(chuàng)建一個(gè)隊(duì)列test測(cè)試。
![](/d/20211017/4beb94c716dee54aae8b926589398b4b.gif)
并在該test隊(duì)列中發(fā)送一條消息
![](/d/20211017/9a9e58e1be6198d39598694ebe2ff4cd.gif)
然后我們通過(guò)php獲取該隊(duì)列中的消息,代碼如下:
?php
try {
//61613默認(rèn)的端口,在ActiveMQ目錄conf/activemq.xml文件可查看
$stomp = new Stomp('tcp://192.168.1.222:61613');
} catch (StompException $e) {
die('error: ' . $e->getMessage());
}
//訂閱一個(gè)消息隊(duì)列
$stomp->subscribe('/queue/test');
//讀取隊(duì)列
$frame = $stomp->readFrame();
//輸出消息體內(nèi)容
echo $frame->body, PHP_EOL;
運(yùn)行上面的代碼
> /data/php56/bin/php 1.php
![](/d/20211017/a4875d5ceb236c992eac485ae8d30bb4.gif)
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《PHP擴(kuò)展開(kāi)發(fā)教程》、《PHP網(wǎng)絡(luò)編程技巧總結(jié)》、《php curl用法總結(jié)》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《php字符串(string)用法總結(jié)》
希望本文所述對(duì)大家PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- php ActiveMQ的安裝與使用方法圖文教程
- PHP使用ActiveMQ實(shí)現(xiàn)消息隊(duì)列的方法詳解
- PHP使用ActiveMQ實(shí)例
- PHP Beanstalkd消息隊(duì)列的安裝與使用方法實(shí)例詳解
- PHP高級(jí)編程之消息隊(duì)列原理與實(shí)現(xiàn)方法詳解
- php+redis實(shí)現(xiàn)消息隊(duì)列功能示例
- PHP+RabbitMQ實(shí)現(xiàn)消息隊(duì)列的完整代碼
- 使用PHP訪問(wèn)RabbitMQ消息隊(duì)列的方法示例
- php實(shí)現(xiàn)websocket實(shí)時(shí)消息推送
- php 使用ActiveMQ發(fā)送消息,與處理消息操作示例