前面我们已经学了怎样部署ActiveMQ。
我们知道通过ActiveMQ的一个管理后台能够查看任务队列。
今天
用PHP来操作ActiveMQ。我们能够借助一个第三方扩展。
下载:
composer require fusesource/stomp-php:2.0.*
然后新建test.php:
<?php
require __DIR__.'/vendor/autoload.php'; //引入自己主动载入的文件
$connect = new FuseSourceStompStomp('tcp://10.211.55.13/:61613');
$connect->connect();
$userId = 1001;
$result = $connect->send('email',$userId); //比方发邮件
var_dump($result);
发送消息成功。打印bool(true)
我们在ActiveMQ自带的管理后台查看,确实有一个名为”email”的队列。
上面我们发送的一个id,我们还能够发送json数据。
$data = array('id'=>1001,'email'=>'110@qq.com','content'=>'test');
$result = $connect->send('email',json_encode($data));
我们在MQ后台能够查看消息具体
上面的代码到这里,还不够完美。假设我们server重新启动了activemq。没有处理的消息会丢失。
这个时候我们须要用到send()
方法的第三个參数。
//消息持久化 persistent为true,字符串的'true'
$result = $connect->send('email',json_encode($data),array('persistent'=>'true'));
前面我们完毕了『发送』
给mqserver发送消息(email消息)。
那么在mq的队列中的任务,又是怎么处理的呢?
<?php
require __DIR__.'/vendor/autoload.php'; //引入自己主动载入的文件
$connect = new FuseSourceStompStomp('tcp://10.211.55.13/:61613');
$connect->connect();
//订阅队列消息
$connect->subscribe('email');
if ($connect->hasFrameToRead()){
$frame = $connect->readFrame();
print_r(
-
相关阅读:
盘古越狱工具在用户空间的行为
hdu 5538 House Building(长春现场赛——水题)
html 锚点定位
OOP版电子词典
有趣的JavaScript原生数组函数
<LeetCode OJ> 121. /122. Best Time to Buy and Sell Stock(I / II)
hadoop 出现FATAL conf.Configuration: error parsing conf file,异常
IT痴汉的工作现状10-Sprint Planning
2015 Astar Contest
无法使用BIPublisher开发报表
-
原文地址:https://www.cnblogs.com/yxysuanfa/p/7390474.html
- 最新文章
-
数据结构与算法实验题 数据结构与算法实验题 10 .2 小明解题报告
中位数与第K小元素
数据结构_最少需要收集的材料的个数之链表实现集合
用链表实现集合
连续整数和问题
哥德巴赫猜想问题
素数表
字典树的应用
归并排序
是否能确定唯一二叉树
- 热门文章
-
数据结构与算法实验题6.1 s_sin’s bonus byFZuer
数据结构与算法实验题6.1 鼹鼠掘土挑战赛
二叉树的基本定义域操作代码
括号和出栈所有序列问题
卡兰特数对出栈序列的解法
PAT 甲级 1028 List Sorting (25 分)(排序,简单题)
PAT 甲级 1027 Colors in Mars (20 分)(简单,进制转换)
PAT 甲级 1026 Table Tennis (30 分)(坑点很多,逻辑较复杂,做了1天)
PAT 甲级1025 PAT Ranking (25 分)(结构体排序,第一次超时了,一次sort即可小技巧优化)...
A charge WIFI point base on airbase-ng+dhcp+lamp+wiwiz