RabbitMQ结合skyjt使用

RabbitMQ

Mac 安装

  1. brew install rabbitmq (control + c 取消更新brew)在这里插入图片描述

  2. 安装RabiitMQ的可视化监控插件
    // 切换到MQ目录,注意你的安装版本可能不是3.8.3 cd /usr/local/Cellar/rabbitmq/3.8.3/ // 启用rabbitmq management插件 sudo sbin/rabbitmq-plugins enable rabbitmq_management

  3. 设置环境变量。open .bash_profile, 添加

    export RABBITMQ_HOME=/usr/local/Cellar/rabbitmq/3.8.3
    export PATH=$PATH:$RABBITMQ_HOME/sbin
    

    完成后

    source  .bash_profile
    
  4. sudo rabbitmq-server (开启服务)
    在这里插入图片描述

  5. 开启后在浏览器打开 http://localhost:15672/#/
    初始用户、密码都是 guest 。
    切换到 admin ,添加用户
    在这里插入图片描述

  6. 其他操作:

    • 关闭服务 :另开一个终端: sudo rabbitmqctl stop
    • 查看状态: sudo rabbitmqctl status
      在这里插入图片描述

开始项目

  1. 初始化项目 jt init 。(如没有安装jt 工具,请查看 git在这里插入图片描述

  2. 修改 confing/config.default.js中的username、password

    rabbitMQ: {
        protocol: 'amqp',
        host: 'localhost',
        port: 5672,
        username: 'guest',
        password: 'guest',
        vhost: ''
      },
    
  3. 在 RabbitMQ 中新建 Queue,名称为testQueue.
    在这里插入图片描述

  4. 修改项目中 index_mq_stat.js中

    	sky.start(config, async () => {
     	let res = await rtsMQ.send({text:'q2'}) 
     	console.log('rtsMQ',res);
    	})
    

    send():生产者发送信息的封装方法。

  5. 执行 nodemon index_mq_stat.js,此时在 testQueue的已经用生产者发出数据
    在这里插入图片描述

  6. 修改 rts_consumer.js 中的queueName为第三步设置的testQueue。

      rtsMQ.rev({
        noAck: false, // 默认false,true会自动 确认消费,会造成来不及消费就ack的情况
        prefetch: 1, // 默认每次消费一条
        cbFunc: consumerFunc,
        queueName: "testQueue", // 这是默认的,如果要动态请设置 相应环境的config文件
      });
    
    // 这边需要 处理data 和 channel=ch两个参数
    async function consumerFunc(data, ch) {
      mqObj = data.content.toString()
      console.log("data===>", mqObj);
      ch.ack(data);
      return;
    }
    
  7. 项目中新开终端,执行 node rts_consumer.js。
    在这里插入图片描述

  8. 此时查看RabbitMQ 中get message 的时候,显示empty。消费者已经消费完。
    在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值