Rabbit MQ

Rabbit MQ

(1)服务配置过程:

                       

(2)安装完成后,对MQ的激活。

(3)重启服务:

(4)创建用户名、密码以及配置权限等

Guest账户只能用于本地连接,配置文件中节点

二、各类型参数了解、数据如何在server中持久化等特点。

其中主要理解Ribbit MQ 中

虚拟主机

路由器 exchange  :作用接收消息到绑定的队列中去

交换机的四种类型

转发消息到绑定的队列。四种类型:direct, topic, headers and fanout

队列 queue

注意:如果发送消息到没有绑定队列的交换机上面,会造成消息丢失

特点:一个交换机可以绑定多个队列,一个队列可以被多个交换机绑定。

不同类型的交换机不能同名,也就是说一个名字的交换机只能有一种类型。

交换器的属性:

- 持久性:如果启用,交换器将会在server重启前都有效。

- 自动删除:如果启用,那么交换器将会在其绑定的队列都被删除掉之后自动删除掉自身。

- 惰性:如果没有声明交换器,那么在执行到使用的时候会导致异常,并不会主动声明。

生产者:产生消息方

队列:不受任何限制

消费者:使用消息方

以上都可以不在一台服务器上。

传递的消息格式为二进制。

再需要对数据的类型进行转换才能投递。

注意:消息不会直接发送给队列,而是先要通过交换机。

发送方和接收方是可以对立存在的,所以当发送完消息后可以关闭

发送方对RabbitMQ server的链接。

网页RabbitMQ提供如下功能:

RabbitMQ使用的数据库mnesia

自带可编辑器启用方式

如下为启动数据库mnesia

Rabbit MQ 是捆绑的内置DataBase 不能替换

如下:

需要学习:如何使用Rabbit MQ 自带Database

  Rabbit mq db存放位置。

很重要的配置文件:但在windows环境下面此文件是不存在的。

只能通过命令:rabbitmqctl environment    进行显示。

集群配置

错误问题:

原因是配置文件,没有写好,造成。

enabled_plugins

RABBITMQ_BASE

D:MQDBData abbit

创建文件

Environment

集群搭建必须关闭防火墙

搭建集群成功后如图:

一台挂掉

集群中必须要做镜像。

不然不能同步数据

步骤:

当其中一个垮了,那么另外一个就会映射。

如何寻找一个实际环境对Rabbit MQ进行运用。

MQ的另外的用途:

对于不需要及时响应的程式比较有实用价值,可以把后台工作比较繁重的部分进行分离。

思路:  EC系统Send EDI 部分逻辑,发送EDI user出发按键,记录单号信息到Datatable中

        转换为byte[] 进行传输到MQ 服务器。 后台再写个服务,读取MQ队列中的数据,进行发送报文,回传SAP,更新DB。等复杂操作。

 目前异常如下:

可能出现的问题:1、如果有一个消息处理不成功会造成堵塞。

                2、消息如果过多,需要多开客户端进行分开处理,不然会形成消息积压。

                3、erlang语言不熟悉,如果出现内部异常无法进行排查。

也许并不是你需要的内容,这只是我人生的一些痕迹. -- soar.pang
原文地址:https://www.cnblogs.com/Soar-Pang/p/5729783.html