Rabbitmq 基本概念与安装及卸载

1,MQ 的基本概念
1.1 MQ 概述 (全称 Message Queue ,在消息的传输过程中保存消息的容器,多用于分布式系统)
1.1.1 MQ 的优势

应用解耦,异步提速,并发削峰

应用解耦:把有关联的内部系统采用异步消息通知的方式传递,提高系统的容错性和可维护性。
异步提速:不必要的操作可使用异步的方式执行,减低业务反应的时间, 提升用户体验和系统吞吐量。
并发削峰:提高系统的稳定性,避免高并发情况的服务瘫痪

1.1.2 MQ 的问题/劣势
  1. 系统可用性低,越多的服务依赖 MQ , 系统的稳定性越低。需要保证 MQ 的高可用
  2. 系统复杂度提高,需要考虑消息的消息丢失与重复消费,及消息的传递的顺序性
1.1.3 常见的 MQ 技术
比较特征RabbitMQActiveMQRocketMQKafka
公司/社区RabbitApacheAibabaApache
产品开发语言ErlangJavaJavaScala/Java
协议支持AMQP,XMPP,SMTP,STOMPOpenWire,STOMP,REST,XMPP,AMQP自定义自定义协议,社区封装了http协议支持
客户端支持语言官方支持Erlang,Java,Ruby等,社区产出多种API,几乎支持所有语言Java,C,C++,Python,PHP,Perl,.net等Java , C++不成熟官方支持Java,社区产出多种API,如php ,Python
单机吞吐量万级(其次)万级(最差)十万级(最好)十万级(次之)
消息延迟微秒级毫秒级毫秒级毫秒以内
功能特征并发能力强,性能极其好,延时低,社区活跃,管理界面丰富老牌产品,成熟度高,文档较多MQ功能比较完备,扩展性比较佳只支持只要的MQ功能
1.1.4 RabbitMQ 安装

1.1.4.1 上传必要安装包

erlang­18.3­1.el7.centos.x86_64.rpm — erlang的rpm库
socat­1.7.3.2­5.el7.lux.x86_64.rpm – socat
rabbitmq­server­3.6.5­1.noarch.rpm – rabbitmq

1.1.4.2 安装Erlang

# Erlang 
rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpm

1.1.4.3 安装 RabbitMQ

#socat
rpm -ivh socat-1.7.3.2-1.1.el7.x86_64.rpm
#rabbitmq
rpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm

1.1.4.4 修改用户登录与连接心跳检测,注意修改

 vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.5/ebin/rabbit.app
 # 修改:loopback_users 中的 <<"guest">>,只保留guest (用于用户登录)

将loopback_users 中的 <<“guest”>> , 只保留 guest
在这里插入图片描述

1.1.4.4 安装管理界面插件

  1. 启动服务(停止,重启,状态查看)
# 启动
service rabbitmq-server start  
# 重启
service rabbitmq-server restart  
# 停止
service rabbitmq-server stop
# 查看 rabbitmq 状态
service rabbitmq-server status

# 换作以下可在当时看到启动log
rabbitmq-server start/restart/stop/status
  1. 开启管理界面
rabbitmq-plugins enable rabbitmq_management
  1. 查看服务有没有启动 ( Rabbitmq默认端口是 15672)
#
lsof -i:15672
#
netstat -tnlp | grep 15672
  1. 创建管理用户
# 进入到获取的路径中
cd /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.14
# 进入到sbin目录找到rabbitmqctl文件
cd sbin
# 新增用户admin,密码也为admin
rabbitmqctl  add_user admin admin
# 也可以使用rabbitmqctl命令更改密码
abbitmqctl change_password admin admin
# 将admin加入到管理员组
rabbitmqctl set_user_tags admin administrator
# 查看用户列表
rabbitmqctl  list_users
  1. 访问 RabbitMQ Management

http://你的ip地址:15672/ ---- 输入账号admin 密码 admin

1.1.5 管理页面创建用户

角色说明:

1、超级管理员(Administrator)
可登陆管理员控制台,可查看所有的信息,并且可以对用户,策略(policy)进行操作。

2、监控者(monitoring)
可登陆管理控制台,同时可以查看rabbitmq 节点的相关信息(进程数,内存使用情况,磁盘使用情况等)

3、策略制定者(policymaker)
可登录管理控制台,同时可以对policy进行管理。但无法查看节点的相关信息

4、普通管理者(management)
仅可登录管理控制台,无法查看节点信息,也无法对策略进行管理。

5、其他
无法登录管理控制台,通常就是普通的生产者和消费者。
在这里插入图片描述

1.1.6 设置 Virtual Hosts 权限

Virtual Hosts 配置

很像数据库的概念并且可以指定用户对库和表等操作的权限。
RabbitMQ也有类似的权限管理;在RabbitMQ中可以虚拟消息服务器Virtual
Host,每个Virtual Hosts相当于一个相对独立的RabbitMQ服务器,每个
VirtualHost之间是相互隔离的。exchange、queue、message不能互通。 相当
于数据库的db。Virtual Name一般以/开头。

创建 Virtual Hosts

在这里插入图片描述
设置 Virtual Hosts 权限
在这里插入图片描述
在这里插入图片描述

1.1.7 卸载 Rabbitmq

删除 rabbitmq

# 停止服务
rabbitmqctl app_stop
yum list | grep rabbitmq
# 卸载
yum -y remove rabbitmq-server.noarch

在这里插入图片描述
删除erlang

yum list | grep erlang
yum -y remove erlang-*
yum remove erlang.x86_64

删除lib文件

 rm -rf /usr/lib64/erlang 
 rm -rf /var/lib/rabbitmq
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不像程序猿的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值