crm开发定制RabbitMQ管理界面操作详情

一.crm开发定制主界面介绍


crm开发定制该页面是主界面,crm开发定制总共有六个选项卡:

1.Overview

MQcrm开发定制的概览情况,crm开发定制里面包括集群各个节点的信息、信息;

Totals: crm开发定制准备消费的消息数、crm开发定制待确认的消息数、crm开发定制消息总数以及消息的各crm开发定制种处理速率(发送速率、确认速率、crm开发定制写入硬盘速率等等)。
Nodes: crm开发定制其实就是支撑 RabbitMQ crm开发定制运行的一些机器,crm开发定制相当于集群的节点。crm开发定制点击每个节点,crm开发定制可以查看节点的详细信息。
Churn statistics: 展示的是 Connection、Channel 以及 Queue 的创建/关闭速率。crm开发定制这个里边展示了端口的crm开发定制映射信息以及 Web 的上下文信息。
5672 是 RabbitMQ 通信端口。
15672 是 Web 管理页面端口。
25672 是集群通信端口。
Export definitions && Import definitions: 两个可以导入导出当前实例的一些配置信息:

2.Connections

MQ运行中的当前保持连接的连接信息,其中包含了连接的虚拟主机路径(virtual host),链接的主机及端口、那个用户连接的,状态等信息。在java代码中通过ConnectionFactory 的 newConnection() 后进行创建一个连接,无论是消息生产者还是消息消费者,只要连接上来了这里都会显示出来,当使用connection.close()之后 连接将关闭。

3.Channels

信道或者通道,Channel是在连接中存在的,一个Connection中可以有多个Channel。在Java代码中 通过连接来创建信道。当代码执行connection.createChannel(),该界面下面就会有信道信息,它和连接紧密相关;一个连接可以有多个通道,这个多个通道通过多线程实现,一般情况下,我们在通道中创建、交换机等。生产者的通道一般会立马关闭;消费者是一直监听的,通道几乎是会一直存在。

Channel:通道名称。
User name:该通道登录使用的用户名。
Model:通道确认模式,C 表示 confirm;T 表示事务。
State:通道当前的状态,running 表示运行中;idle 表示空闲。
Unconfirmed:待确认的消息总数。
Prefetch:Prefetch 表示每个消费者最大的能承受的未确认消息数目,简单来说就是用来指定一个消费者一次可以从 RabbitMQ 中获取多少条消息并缓存在消费者中,一旦消费者的缓冲区满了,RabbitMQ 将会停止投递新的消息到该消费者中直到它发出有消息被 ack 了。总的来说,消费者负责不断处理消息,不断 ack,然后只要 unAcked 数少于 prefetch * consumer 数目,RabbitMQ 就不断将消息投递过去。
Unacker:待 ack 的消息总数。
publish:消息生产者发送消息的速率。
confirm:消息生产者确认消息的速率。
unroutable (drop):表示未被接收,且已经删除了的消息。
deliver/get:消息消费者获取消息的速率。
ack:消息消费者 ack 消息的速率。

***4.Exchange

***交换机,它与队列进行绑定后,消息根据exchang的类型,按照不同的绑定规则分发消息到消息队列中,可以是一个消息被分发给多个消息队列,也可以是一个消息分发到一个消息队列,和队列紧密相关;

Type 表示交换机的类型。
Features 有两个取值 D 和 I。D 表示交换机持久化,将交换机的属性在服务器内部保存,当 MQ 的服务器发生意外或关闭之后,重启 RabbitMQ 时不需要重新手动或执行代码去建立交换机,交换机会自动建立,相当于一直存在。I 表示这个交换机不可以被消息生产者用来推送消息,仅用来进行交换机和交换机之间的绑定。
Message rate in 表示消息进入的速率。Message rate out 表示消息出去的速率。

name 添加的交换机名称
type 交换机类型,有四种;
直连交换机:Direct exchange;
扇形交换机:Fanout exchange;
主题交换机:Topic exchange;
首部交换机:Headers exchange
Durability 是否需要持久化,设置是否持久 durab 设置为 true 表示持久化, 反之是非持久,设置为true则将Exchange存盘,即使服务器重启数据也不会丢失
Auto delete设置是否自动删除,当最后一个绑定到Exchange上的队列删除后,自动删除该Exchange,简单来说也就是如果该Exchange没有和任何队列Queue绑定则删除
Internal 设置是否为rabbitmq内部使用, true表示是内部使用, false表示不是内部使用
Arguments 分发器的其他设置项,json格式;可以设置消息最大数量等属性

下面还有一些常用的操作:
Bindings:交换机和队列建立绑定关系
Publish message:发送消息;通过交换机发送消息到和它有绑定关系的队列中;

5.Queue

队列,是Massage的落脚点和等待接收的地方,Queue很适合做负载均衡,RabbitMQ可以在若干consumer中间实现轮流调度(Round-Robin);

Features: 表示消息队列的特性,D 表示消息队列持久化。
State: 表示当前队列的状态,running 表示运行中;idle 表示空闲。
Ready: 表示待消费的消息总数。
Unacked: 表示待应答的消息总数。
Total: 表示消息总数 Ready+Unacked。
incoming: 表示消息进入的速率。
deliver/get: 表示获取消息的速率。
ack: 表示消息应答的速率。

Add a new queue 可以添加一个新的消息队列。
点击每一个消息队列的名称,可以进入到消息队列中。进入到消息队列后,可以完成对消息队列的进一步操作;发送消息。获取一条消息。移动一条消息(需要插件的支持)。删除消息队列。清空消息队列中的消息。

**Durablity: ** 持久化选项,Durable(持久化保存),Transient(即时保存), 持久化保存会在RabbitMQ宕机或者重启后,未消费的消息仍然存在,即时保存在RabbitMQ宕机或者重启后交换机会不存在。需要重新定义该Exchange。
即使保存可以理解为计算机内存,关机就没了。
持久化保存可以理解为硬盘,关机,文件还在。

get messages: 获取消息;

Ack mode中:
Nack message requeue true 获取消息,不做ack应答,消息重新入队列;
reject requeue true 拒绝获取消息,消息重新放入队列;
reject requeue false 拒绝获取消息,消息不重新入队列,会删除消息;
Automatic ack 自动ack应答,收到消息,消息会删除

6.Admin

用户增删改查以及虚拟主机、规则等的配置;

各项属性含义如下:
Name: 表示用户名称。
Tags: 表示角色标签,只能选取一个。
Can access virtual hosts: 表示允许进入的虚拟主机。
Has password: 表示这个用户是否设置了密码。常见的两个操作是管理用户和虚拟主机。
Add a user 可以添加一个新的用户,添加用户的时候需要给用户设置 Tags,其实就是用户角色,如下:
none: 不能访问 management plugin
management: 用户可以通过 AMQP 做的任何事 列出自己可以通过 AMQP 登入的 virtual hosts 查看自己的 virtual hosts 中的 queues,
exchanges 和 bindings 查看和关闭自己的 channels 和 connections 查看有关自己的 virtual hosts 的“全局”的统计信息,包含其他用户在这些 virtual hosts 中的活动
policymaker: management 可以做的任何事 查看、创建和删除自己的 virtual hosts 所属的 policies 和 parameters
monitoring:management 可以做的任何事 列出所有 virtual hosts,包括他们不能登录的 virtual hosts 查看其他用户的 connections 和 channels 查看节点级别的数据如 clustering 和 memory 使用情况 查看真正的关于所有 virtual hosts 的全局的统计信息
administrator:policymaker 和 monitoring 可以做的任何事 创建和删除 virtual hosts 查看、创建和删除 users 查看创建和删除 permissions 关闭其他用户的 connections
impersonator (模拟者) 模拟者,无法登录管理控制台。

二.实际操作发送消费消息

2.1、Direct
DirectExchange 的路由策略是将消息队列绑定到一个 DirectExchange 上,当一条消息到达 DirectExchange 时会被转发到与该条消息 routing key 相同的 Queue 上,例如消息队列名为 “queue.test”,则 routingkey 为 “queue.test” 的消息会被该消息队列接收。

2.1.1、新建direct交换机:


2.1.2 新建普通队列


2.1.3 交换机和队列建立绑定关系
点击交换机进行绑定:

点击交换机发送消息:这里我发送了两条

发动成功:


点击队列的消息;
2.2 Fanout

FanoutExchange 的数据交换策略是把所有到达 FanoutExchange 的消息转发给所有与它绑定的 Queue 上,在这种策略中,routingkey 将不起任何作用;
新建队列:
新建交换机:

交换机和每个队列帮绑定:

然后给这个交换机发送消息两条消息:我们看到每个队列都收到两条消息;

2.3.Topic

TopicExchange 是比较复杂但是也比较灵活的一种路由策略,在 TopicExchange 中,Queue 通过 routingkey 绑定到 TopicExchange 上,当消息到达 TopicExchange 后,TopicExchange 根据消息的 routingkey 将消息路由到一个或者多个 Queue 上;*(星号)可以代替一个单词,#(井号)可以替代零个或多个单词。

首先创建 TopicExchange,参数和前面的一致。然后创建三个 Queue,第一个 Queue 用来存储和 “xiaomi” 有关的消息,第二个 Queue 用来存储和 “huawei” 有关的消息,第三个 Queue 用来存储和 “phone” 有关的消息。
将三个 Queue 分别绑定到 TopicExchange 上,第一个 Binding 中的 “xiaomi.#” 表示消息的 routingkey 凡是以 “xiaomi” 开头的,都将被路由到名称为 “xiaomi” 的 Queue 上,第二个 Binding 中的 “huawei.#” 表示消息的 routingkey 凡是以 “huawei” 开头的,都将被路由到名称为 “huawei” 的 Queue 上,第三个 Binding 中的 “#.phone.#” 则表示消息的 routingkey 中凡是包含 “phone” 的,都将被路由到名称为 “phone” 的 Queue 上。
第一条消息将被路由到名称为 “xiaomi” 的 Queue 上,第二条消息将被路由到名为 “huawei” 的 Queue 上,第三条消息将被路由到名为 “xiaomi” 以及名为 “phone” 的 Queue 上,第四条消息将被路由到名为 “huawei” 以及名为 “phone” 的 Queue 上,最后一条消息则将被路由到名为 “phone” 的 Queue 上。

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发