CentOS 下简单利用Node.js和rabbitmq模块

来源:互联网 发布:java ping ip 端口 编辑:程序博客网 时间:2024/06/01 09:42

1.安装更新源

为了通过yum安装erlang,需要安装新的更新源

  • rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

 

2.安装erlang

  • yum installerlang

 

3.安装rabbit-server

  • rpm --importhttp://www.rabbitmq.com/rabbitmq-signing-key-public.asc
  • yum installrabbitmq-server-3.0.1-1.noarch.rpm

安装rabbitmq-server管理页面

  • rabbitmq-pluginsenable rabbitmq_management

重启rabbitmq-server服务

通过访问http://server-name:15672/ 访问管理页面,默认登录账号密码分别为guest,guest


 

4.安装node.js下的rabbit-server 

  • npm install amqp

5.简单测试rabbitmq模块 

amqp-consumer.js

/** * Created with JetBrains WebStorm. * User: hexie * Date: 13-1-28 * Time: 上午10:39 * To change this template use File | Settings | File Templates. */var http = require('http'),    url = require('url'),    amqp = require('amqp');var rabbitMQ = amqp.createConnection({ host: '127.0.0.1' });rabbitMQ.addListener('ready', function(){    var queue = rabbitMQ.queue('',{'exclusive':true}, function(q){        //get all messages for the rabbitExchange        q.bind('rabbitExchange','#');        console.log("inqueue")        // Receive messages        q.subscribe(function (message) {            // Print messages to stdout            console.log("received message");            console.log(message.data.toString());        });    });});

amqp-generator.js

/** * Created with JetBrains WebStorm. * User: hexie * Date: 13-1-28 * Time: 上午10:40 * To change this template use File | Settings | File Templates. */var http = require('http'),    url = require('url'),    amqp = require('amqp');var exchangefunction sendMsg(msg){    console.log(msg)    if(exchange)    {        exchange.publish('key.a',msg)    }    else    {        console.log("exchange not around now...")    }}var server = http.createServer(function(req, res){    // your normal server code    var path = url.parse(req.url).pathname;    sendMsg('hello node & rabbitmq');    res.writeHead(200, {'Content-Type':'text/html'})    res.write('OK', 'utf8');    res.end();});var rabbitMQ = amqp.createConnection({ host: '127.0.0.1' });rabbitMQ.addListener('ready', function(){    // create the exchange if it doesnt exist    exchange = rabbitMQ.exchange('rabbitExchange',{'type':'fanout'})});server.listen(8081);

打开浏览器,输入网址http://serverip:8081

友情提示,要启动好你的rabbitmq-server 服务器,如果是远程连接,记得关防火墙


运行正常会见到以下信息

inqueue
received message
hello node & rabbitmq


最后附上node.js的rabbitmq模块的api

https://github.com/postwait/node-amqp

原创粉丝点击