消息中间件Rabbitmq的使用

  

一:消息中间件的描述
1,简介
消息中间件也可以称消息队列,是指用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息队列模型,可以在分布式环境下扩展进程的通信。
当下主流的消息中间件有RabbitMQ,卡夫卡,ActiveMQ, RocketMQ等

  

2,消息中间件主要作用
?冗余(存储)
?扩展性
?可恢复性
?顺序保证
?缓冲
?异步通信
?削峰:消息队列中的常用场景,一般在秒杀或抢够活动中使用广泛。一般会因为流量过大,应用系统配置承载不了这股瞬间流量,导致系统直接挂掉,即传说中的“宕机”现象。为解决这个问题,我们会将那股巨大的流量拒在系统的上层,即将其转移至MQ而不直接涌入我们的接口。

  

二。消息队列之一RabbiMQ简介
1, RabbiMQ是? Erang开发的,集群?常?便,因为Erlang天?就是? ?分布式语?,但其本身并不?持负载均衡,支持高并发,支持可扩展。支持AJAX,持久化,用于在分布式系统中存储转发消息,在易用性,扩展性,高可用性等方面表现不俗。

  

2, RabbiMQ的特点
?可靠性
?扩展性
?高可用性
?多种协议
?多语言客户端
?管理界面
?插件机制

  

3。什么是消息队列
MQ全称为消息队列,消息队列。是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。
消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信。

  

4. rabbimq模式
注意:RabbitMQ模式?概分为以下三种:
(1)单吗?模式(一台主机部署rabbitmq)
(2)普通模式(默认的集群模式)。
(3)镜像模式(把需要的队列做成镜像队列,存在于多个节点,属于RabbiMQ的哈?案,在对业务可靠性要求较?的场合中?较适?)。要实现镜像模式,需要先搭建?个普通集群模式,在这个模式的基础上再配置镜像模式以实现?可?,在镜像模式中设置策略可以将主rabbitmq中的数据同步到集群中其他节点里

  

+ + + + + + + + + + + + RabbitMQ集群基础部署(普通模式) + + + + + + + + + + + +

  

一:基础部署,集群里的主机都需要实施的操作

  

1,若有三台服务器作为三个节点,且都联?,关闭防火墙,selinux,编辑域名解析/etc/主机(ip与主机名称应该对应好,要不然容易影响实验)
[root@rabbitmq-1 ~] #
的/etc/hosts vim 192.168.50.138 rabbitmq-1
192.168.50.139 rabbitmq-2
192.168.50.140 rabbitmq-3

  

2,三个节点配置安装rabbitmq软件
安装依赖:
[root@rabbitmq-1 ~] # yum安装- y gcc-c + + unixODBC unixODBC-devel openssl-devel ncurses-devel
[root@rabbitmq-1 ~] # wget -附加项https://packagecloud.io/rabbitmq/erlang/packages/el/7/erlang el7.centos.x86_64.rpm/download——20.3 - 1.。rpm
[root@rabbitmq-1 ~] # rpm -ivh erlang el7.centos.x86_64——20.3 - 1.。rpm

  

测试。
[root@rabbitmq-1 ~] #话务量

  

安装rabbitmq:
[root@rabbitmq-1 ~] https://dl.bintray.com/rabbitmq/all/rabbitmq # wget - server/3.7.5/rabbitmq -服务器- 3.7.5 - 1. - el7.noarch.rpm
[root@rabbitmq-1 ~] # yum安装rabbitmq服务器- 3.7.5 1. - el7.noarch.rpm

  

3。启动
启动方式一:
[root@rabbitmq-1 ~] # systemctl daemon-reload
[root@rabbitmq-1 ~] # systemctl开始rabbitmq服务器
[root@rabbitmq-1 ~] # systemctl启用rabbitmq服务器
[root@rabbitmq-1 ~] # systemctl地位rabbitmq服务器
启动方式二:
[root@rabbitmq-1 ~] #/sbin/service rabbitmq服务器状态——查看状态
[root@rabbitmq-1 ~] #/sbin/service rabbitmq服务器开始——启动

  

4,开启rabbitmq的web访问界面:
[root@rabbitmq-1 ~] # rabbitmq-plugins启用rabbitmq_management

  <人力资源/>   

5。创建用户:
注意:创建用户只需要在一台主机上添加就可以,即把谁当作管理员就在哪儿创建
(1)添加用户和密码谁在
[root@rabbitmq-1 ~] # rabbitmqctl add_user soho 123
创建用户“soho"……

(2)这是为管理员
[root@rabbitmq-1 ~] # rabbitmqctl set_user_tags soho管理员
标签设置为用户“soho"(管理员)……

(3)查看用户
[root@rabbitmq-1 ~] # rabbitmqctl list_users
清单用户……
客人(管理员)
soho(管理员)
…。
(4)权限
[root@rabbitmq-1 ~] # rabbitmqctl set_permissions - p“/?soho“。““。“;“。,
设置权限为用户“soho"vhost在“/?……

此处设置权限时注意”。

消息中间件Rabbitmq的使用