zoukankan      html  css  js  c++  java
  • Node.js使用rabbitMQ(一)

    目前使用的开发环境主要还是win,所以也只是介绍在win下的rabbitMQ的使用。

    一、安装rabbitMQ(Installing on Windows)

    关于安装地址,参见:Installing on Windows,特别需要注意的地方就是:由于rabbitMQ是使用Erlang开发的,所以首先第一步就是安装Erlang VM。在Erlang VM的基础上才能安装rabbitMQ。

    二、安装包:amqp.node

    关于node.js操作rabbitMQ的包,参见如下,rabbitMQ官网:Clients & Developer Tools,我们这里使用:amqp.node

    三、开发demo

    新建一个项目rabbitMQTest,使用npm 安装amqp.node。依据amqp.node上面的API与demo我们,构造一个简单的demo,demo中包含两个文件:push.js用于发送消息,get.js用户获取消息。

    push.js

    var amqp = require('amqplib/callback_api');
    
    amqp.connect('amqp://localhost', function(err, conn) {       //  创建连接
        conn.createChannel(function(err, ch) {
            var q = 'test';
            var msg = 'Hello World!';
    
            ch.assertQueue(q, {durable: false});
            ch.sendToQueue(q, new Buffer(msg));    //   发送消息
            console.log("Send message:", msg);
        });
        setTimeout(function() { conn.close(); process.exit(0) }, 500);
    });

    get.js

    var amqp = require('amqplib/callback_api');
    
    amqp.connect('amqp://localhost', function(err, conn) {     //  创建连接
        conn.createChannel(function(err, ch) {
            var q = 'test';
            ch.assertQueue(q, {durable: false});
            ch.consume(q, function(msg) {           //  接收消息
                console.log("get Message", msg.content.toString());
            }, {noAck: true});
        });
    });

    运行上面两个我文件,在控制台中你会看到想要的结果。

     关于创建连接的时候url:参见:http://www.rabbitmq.com/uri-spec.html

  • 相关阅读:
    api.js
    vue开关
    vue 单选框自定义
    vue 笔记
    Flutter 检测网络连接 监听网络变化
    lutter 调用原生硬件 Api 实现扫码
    flutter 支付宝支付流程以及用 Flutter 在 Android Ios 中实现支付宝支付
    js+css 动效+1的效果
    Vue -- filters 过滤器、倒计时效果
    移动端如何实现两行点点点?
  • 原文地址:https://www.cnblogs.com/duhuo/p/6306535.html
Copyright © 2011-2022 走看看