RabbitMQ学习之:(十二)在Node.js环境下使用RabbitMQ
2015-01-03 10:05
573 查看
学,以致用。找了半天Node.js下RabbitMQ的库,看上去都不太趁手,直到最后找到了amqp库,看上去倒还不错,照着例子,写了第一个RabbitMQ的客户端。
首先,使用 npm install amqp --save 来安装node-amqp库,虽然他推荐使用全局安装,但是不去管它!
以下是客户端代码:
[javascript] view plaincopyprint?
var ampq = require('amqp');
var util = require('util');
var connection = ampq.createConnection();
var bStop = false;
connection.on('ready', function () {
connection.queue('moneyQueue', { durable: true, autoDelete: false }, function (queue) {
console.log('Queue ' + queue.name + ' is open!');
queue.subscribe(function (message, header, deliveryInfo) {
if (message.data) {
var messageText = message.data.toString()
console.log(messageText);
if (messageText === "quit") bStop = true;
}
});
});
});
(function keepItRunning() {
if (!bStop)
setTimeout(keepItRunning, 1000);
else
connection.end();
})();
这个就是一个echo客户端,有消息过来,就打印出来,然后默默等待下一条消息。假如消息是quit,则优雅的退出~
其中,通过代码创建了一个可持久化的Queue: MoneyQueue,这个Queue自动会绑定到默认的Exchange,这个Exchange是RMQ提供的,所以也是持久的,这样就没问题了。
因为这个只是一个Consumer,没法单独工作,要验证的话,可以通过RMQ的管理页面,发送消息。
/article/3699890.html
首先,使用 npm install amqp --save 来安装node-amqp库,虽然他推荐使用全局安装,但是不去管它!
以下是客户端代码:
[javascript] view plaincopyprint?
var ampq = require('amqp');
var util = require('util');
var connection = ampq.createConnection();
var bStop = false;
connection.on('ready', function () {
connection.queue('moneyQueue', { durable: true, autoDelete: false }, function (queue) {
console.log('Queue ' + queue.name + ' is open!');
queue.subscribe(function (message, header, deliveryInfo) {
if (message.data) {
var messageText = message.data.toString()
console.log(messageText);
if (messageText === "quit") bStop = true;
}
});
});
});
(function keepItRunning() {
if (!bStop)
setTimeout(keepItRunning, 1000);
else
connection.end();
})();
这个就是一个echo客户端,有消息过来,就打印出来,然后默默等待下一条消息。假如消息是quit,则优雅的退出~
其中,通过代码创建了一个可持久化的Queue: MoneyQueue,这个Queue自动会绑定到默认的Exchange,这个Exchange是RMQ提供的,所以也是持久的,这样就没问题了。
因为这个只是一个Consumer,没法单独工作,要验证的话,可以通过RMQ的管理页面,发送消息。
/article/3699890.html
相关文章推荐
- RabbitMQ学习之:(十二)在Node.js环境下使用RabbitMQ
- RabbitMQ学习之:(十二)在Node.js环境下使用RabbitMQ
- Node.js学习之环境搭建
- 使用 Node.js 作为完整的云环境开发堆栈
- Docker学习之——Node.js+MongoDB+Nginx环境搭建(一)
- 详解Wondows下Node.js使用MongoDB的环境配置
- 一步步学习使用node和express开发web应用(一)——node简介、开发环境及构建最简web应用
- Node.js学习之IDE环境搭建
- 使用Eclipse搭建Node.js开发环境
- node.js + Express 学习之 环境配置篇
- 配置移动前端开发调试环境(nodejs+npm+weiner的安装和配置使用)
- node.js学习笔记之babel使用
- Node.js 学习笔记--- (1)安装环境
- CoAP学习笔记——nodeJS node-coap安装和使用(windows平台)
- 从零开始学习Node.js例子四 多页面实现数学运算 续一(使用connect和express框架)
- node.js 基础学习 express安装使用
- Node.js学习笔记1:windows环境搭建
- Node.js的学习--使用cheerio抓取网页数据
- CoAP学习笔记——nodeJS node-coap安装和使用(Linux平台)
- (原创)node.js入门之二:mysql的使用-Mac环境开发