node(ActiveMq)
简单尝试了node下的ActiveMQ
1、下载apache-activemq-5.9.0,执行bat文件;
2、登录http://localhost:8161/admin可查看其管理后台;
3、安装stomp客户端 npm install stomp-client
4、修改基础代码如下:
var Stomp = require('stomp-client');
var readline = require('readline');
//创建两个不同的topic
var topic1 = '/topic/topic1';
var topic2 = '/topic/topic2';
var rl = readline.createInterface({
input : process.stdin,
output : process.stdout,
terminal : false
});
//1. publisher-subscribe 定义一个或者多个topic,然后给这些topic发送消息
//2. p2p 双方通过一个quene来发送、接收消息,一个quene只有一个发送、一个接收
//3. request-response 双方各有一个quene作为彼此的收发,相当于两个p2p
var publisher = new Stomp('127.0.0.1', 61613, '', ''); //发布者
var subscriberA = new Stomp('127.0.0.1', 61613, '', ''); //订阅者A
var subscriberB = new Stomp('127.0.0.1', 61613, '', ''); //订阅者B
publisher.connect(function(sessionId) {
rl.on('line', function(line) {
switch (line.split(":")[0]) {
case 'topic1':
publisher.publish(topic1, line.split(":")[1]);
break;
case 'topic2':
publisher.publish(topic2, line.split(":")[1]);
break;
default:
console.log('commond error `' + line.trim() + '`');
break;
}
rl.prompt();
}).on('close', function() {
console.log('close test project!');
process.exit(0);
});
});
subscriberA.connect(function(sessionId) {
subscriberA.subscribe(topic1, function(body, headers) {
console.log('subscriberA From Topic1:', body);
});
subscriberA.subscribe(topic2, function(body, headers) {
console.log('subscriberA From Topic2:', body);
});
});
subscriberB.connect(function(sessionId) {
subscriberB.subscribe(topic1, function(body, headers) {
console.log('subscriberB From Topic1:', body);
});
subscriberB.subscribe(topic2, function(body, headers) {
console.log('subscriberB From Topic2:', body);
});
});
输入不同命令后,控制台输出如下:

同时在管理后台的topic栏目下,查看创建的topic

node(ActiveMq)的更多相关文章
- ActiveMQ, Qpid, HornetQ and RabbitMQ in Comparison
国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送)国内私 ...
- babeljs源码
babel.min.js!function(e,t){"object"==typeof exports&&"object"==typeof mo ...
- ActiveMQ的集群方案对比及部署
转载:http://blog.csdn.net/lifetragedy/article/details/51869032 ActiveMQ的集群 内嵌代理所引发的问题: 消息过载 管理混乱 如何解决这 ...
- How to configure security of ActiveMQ ?
Terms {activemq.home}: The ActiveMQ installation folder. How to configure ActiveMQ to use JAAS Authe ...
- Activemq mqtt 点对点聊天实现(转载)
我这想到一个点对点聊天的方法,不用没割人都建立一个topic了,思路还是自定义一个分发策略,具体如下: 1. 建立一个topic,所有人都用匹配订阅的方式订阅以该topic为头的topic,例如:所 ...
- ActiveMQ实现负载均衡+高可用部署方案
一.架构和技术介绍 1.简介 ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线.完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现 2.activemq的特 ...
- JMS学习(六)-ActiveMQ的高可用性实现
原文地址:http://www.cnblogs.com/hapjin/p/5663024.html 一,ActiveMQ高可用性的架构 ActiveMQ的高可用性架构是基于Master/Slave 模 ...
- ActiveMQ实现负载均衡+高可用部署方案(转)
本文转自:http://www.open-open.com/lib/view/open1400126457817.html%20 一.架构和技术介绍 1.简介 ActiveMQ 是Apache出品,最 ...
- How to Setup Replicated LevelDB Persistence in Apache ActiveMQ 5.9--转载
原文地址:https://simplesassim.wordpress.com/2013/11/03/how-to-setup-replicated-leveldb-persistence-in-ap ...
随机推荐
- rnandroid环境搭建
react-native 环境搭建具体步骤这个大家已经玩烂了,这个主要是记录下来自己做win7系统遇到的坑 1.com.android.ddmlib.installexception 遇到这个问题,在 ...
- 关于微软HttpClient使用,避免踩坑
最近公司对于WebApi的场景使用也越来越加大了,随之而来就是Api的客户端工具我们使用哪个?我们最常用的估计就是HttpClient,在微软类库中命名空间地址:System.Net.Http,是一个 ...
- WPF样式之画刷结合样式
第一种画刷,渐变画刷GradientBrush (拿线性渐变画刷LinearGradientBrush(其实它涵盖在GradientBrush画刷内.现在拿他来说事.),还有一个圆心渐变画刷Radia ...
- if __name__== "__main__" 的意思(作用)python代码复用
if __name__== "__main__" 的意思(作用)python代码复用 转自:大步's Blog http://www.dabu.info/if-__-name__ ...
- SOLID 设计原则
SOLID 原则基本概念: 程序设计领域, SOLID (单一功能.开闭原则.里氏替换.接口隔离以及依赖反转)是由罗伯特·C·马丁在21世纪早期 引入的记忆术首字母缩略字,指代了面向对象编程和面向对象 ...
- AFNetworking图片上传
//上传图片 -(void)upLoadImage:(UIImage *)upImage { //创建管理 AFHTTPRequestOperationManager *manager = [AFHT ...
- 完整部署CentOS7.2+OpenStack+kvm 云平台环境(1)--基础环境搭建
公司在IDC机房有两台很高配置的服务器,计划在上面部署openstack云平台虚拟化环境,用于承载后期开发测试和其他的一些对内业务.以下对openstack的部署过程及其使用做一详细介绍,仅仅依据本人 ...
- Spring.Net在Mvc4.0中应用的说明
案例Demo:http://yunpan.cn/cJ5aZrm7Uybi3 访问密码 414b Spring.Net在Mvc4.0中应用的说明 1.引用dll 2.修改Global文件 (Spring ...
- Ubuntu14.04配置Mono+Jexus
总所周知,ASP.NET是微软公司的一项技术,是一个网站服务端开发的一种技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们,就是所谓动态网站开发,它依赖运行于 IIS 之中的程序 .但 ...
- 【道德经】漫谈实体、对象、DTO及AutoMapper的使用
写在前面 实体和值对象 实体和对象 故常无欲以观其妙,常有欲以观其徼 初始实体和演化实体 代码中的DTO AutoMapper实体转换 后记 实体(Entity).对象(Object).DTO(Dat ...