专栏首页share ai happiness消息中间件初识和安装 — RabbitMQ

消息中间件初识和安装 — RabbitMQ

这两天有个功能实现需要用到rabbitmq,之前做大数据的时候用过kafka,对rabbitmq了解的比较少,这里进行学习总结。

RabbitMQ能为你做什么?

消息系统允许软件、应用相互连接和扩展。这些应用可以相互链接起来组成一个更大的应用,或者将用户设备和数据进行连接。消息系统通过将消息的发送和接收分离来实现应用程序的异步和解耦。

或许你在考虑实现以下功能:

  1. 数据投递,非阻塞操作或推送通知。
  2. 发布/订阅,异步处理,或者工作队列。

这些都是可以通过消息系统实现的。RabbitMQ是一个消息代理 - 一个消息系统的媒介。它可以为你的应用提供一个通用的消息发送和接收平台,并且保证消息在传输过程中的安全。

有什么亮点:

  • 可靠性:持久性、投递确认、高可用和发布者证实;
  • 集群:同一局域网络下的多个RabbitMQ服务器可以聚合在一起,实现同一个逻辑;
  • 路由灵活;
  • 多协议:支持多种消息协议的消息传递;
  • 可视化管理界面:可以在界面进行可视化管理;
  • 有较大的社区;

虚拟机上安装RabbitMQ

  • 安装erlang;
  • 安装RabbitMQ;
  • 启动命令;
  • WEB管理;
  • 用户管理;
  • 登录;

由于rabbitmq是基于erlang语言开发的,所以必须先安装erlang。

安装依赖:yum -y install gcc glibc-devel make ncurses-devel openssl-devel xmlto perl wget gtk2-devel binutils-devel
下载wget http://file.zhaobl.com/common/otp_src_22.0.tar.gz
解压:tar -zxvf otp_src_22.0.tar.gz
移走:mv otp_src_22.0 /usr/local/
切换目录:cd /usr/local/otp_src_22.0/
创建即将安装的目录:mkdir ../erlang
配置安装路径:./configure --prefix=/usr/local/erlang
安装:make install
查看一下是否安装成功:ll /usr/local/erlang/bin
添加环境变量:echo 'export PATH=$PATH:/usr/local/erlang/bin' >> /etc/profile
刷新环境变量:source /etc/profile
甩一条命令瞬间进入了一个未知的世界:erl
在里面输入halt(). 命令退出来安装RabbitMQ:
下载:wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.7.15/rabbitmq-server-generic-unix-3.7.15.tar.xz
由于是tar.xz格式的所以需要用到xz,没有的话就先安装 :yum install -y xz
第一次解压:/bin/xz -d rabbitmq-server-generic-unix-3.7.15.tar.xz
第二次解压:tar -xvf rabbitmq-server-generic-unix-3.7.15.tar
移走:mv rabbitmq_server-3.7.15/ /usr/local/
改名:mv /usr/local/rabbitmq_server-3.7.15  rabbitmq
配置环境变量:echo 'export PATH=$PATH:/usr/local/rabbitmq/sbin' >> /etc/profile
刷新环境变量:source /etc/profile
创建配置目录:mkdir /etc/rabbitmq
启动命令启动:rabbitmq-server -detached
停止:rabbitmqctl stop
状态:rabbitmqctl status

防火墙之类的请自行处理(5672和15672端口)

WEB管理

开启web插件:rabbitmq-plugins enable rabbitmq_management
访问:http://127.0.0.1:15672/
默认账号密码:guest\guest(这个账号只允许localhost访问)

用户管理

查看所有用户:rabbitmqctl list_users
添加一个用户:rabbitmqctl add_user xuan 123456
配置权限:rabbitmqctl set_permissions -p "/" xuan ".*" ".*" ".*"
查看用户权限:rabbitmqctl list_user_permissions xuan
设置tag:rabbitmqctl set_user_tags xuan administrator
删除默认用户:rabbitmqctl delete_user guest

如果是在远程服务器上安装的,这个时候就可以进行远程访问了。

本文分享自微信公众号 - 1001次重燃(smile765999),作者:木野归郎

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-11-21

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Hive中使用 with as 优化SQL

    当我们书写一些结构相对复杂的SQL语句时,可能某个子查询在多个层级多个地方存在重复使用的情况,这个时候我们可以使用 with as 语句将其独立出来,极大提高S...

    木野归郎
  • 消息中间件工作队列 — RabbitMQ

    工作队列(又称:任务队列——Task Queues)是为了避免等待一些占用大量资源、时间的操作。当我们把任务(Task)当作消息发送到队列中,一个运行在后台的工...

    木野归郎
  • 深度学习那些事 — 反向传播

    这部分是深度学习的重点,掌握了反向传播算法就相当于掌握了一半的神经网络算法。其实就是将损失函数产生的误差通过边进行反向传播往回传播的过程,传播的过程当中会得到每...

    木野归郎
  • Linux 下安装 RabbitMQ 详细教程

    MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专...

    java_wxid
  • 安装rabbitMQ

    1、先在www.erlang.org/downloads下载erlang的源码 2、http://www.rabbitmq.com/download.html下...

    HUC思梦
  • CentOs7.3 搭建 RabbitMQ 3.6 单机多实例服务

    老七Linux
  • Mac安装RabbitMQ 配置rabbitmqctl

    Coxhuang
  • RabbitMQ消息队列部署与配置基础

    “每个理性的IT人士都置顶了吴柯的运维笔记” RabbitMQ简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列...

    吴柯
  • Centos6.4安装Rabbitmq集群 原

    然后去http://www.erlang.org/downloads下载源码包到服务器上

    尚浩宇
  • Centos7部署RabbitMQ 3.7.6

    rabbitmq是采用Erlang(一种通用的面向并发的编程语言)编写的符合AMQP(Advanced Message Queuing Protocol)规范的...

    阿dai学长

扫码关注云+社区

领取腾讯云代金券