检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
华为云使用RabbitMQ作为消息引擎,RabbitMQ是一个生产者和消费者模型,主要负责接收、存储和转发消息。以下概念基于RabbitMQ进行描述。 消息 消息一般分为两部分,消息体和标签,标签主要用来描述这条消息,消息体是消息的内容,是一个JSON体或者数据等。 生产者发送消息,消费
与其他云服务的关系 弹性云服务器(Elastic Cloud Server) 弹性云服务器是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。RabbitMQ实例运行在弹性云服务器上,一个代理对应一台弹性云服务器。 云硬盘(Elastic Volume Service) 云硬
Required 保留请求。 403 Forbidden 请求被拒绝访问。 返回该状态码,表明请求能够到达服务端,且服务端能够理解用户请求,但是拒绝做更多的事情,因为该请求被设置为拒绝访问,建议直接修改该请求,不要重试该请求。 404 NotFound 所请求的资源不存在。 建议直接修改该请求,不要重试该请求。
客户端是否可以连接同个RabbitMQ下多个Vhost? 客户端可以连接同个RabbitMQ下多个Vhost。 Vhost(Virtual Hosts)是RabbitMQ的基本特性,每个Vhost相当于一个相对独立的RabbitMQ服务器,每个Vhost数据目录不同,共用一个进程。性能上,连接
分布式消息服务RabbitMQ版提供包年/包月和按需计费两种计费模式,以满足不同场景下的用户需求。包年/包月是一种预付费模式,即先付费再使用,按照订单的购买周期进行结算,因此在购买之前,您必须确保账户余额充足。按需计费是一种后付费模式,即先使用再付费,按照RabbitMQ实例实际使用时长计费。关于两种计
方案概述 在RabbitMQ的业务处理过程中,如果消息重发了多次,消费者端对该重复消息消费多次与消费一次的结果是相同的,多次消费并没有对业务产生负面影响,那么这个消息处理过程是幂等的。消息幂等保证了无论消息被重复投递多少次,最终的处理结果都是一致的,避免了因消息重复而对业务产生影响。
过量的消息堆积可能会引起内存或磁盘告警,从而造成所有connection阻塞,进而影响到其他队列的使用,导致整体服务质量的下降。 消息堆积产生的原因 一般来说消息堆积是由于生产消息的速率远大于消费消息的速率所导致的。比如某个时间段消费端处理消息异常缓慢,发送一条消息只要3秒钟,而消费一条消息需要1分钟,每分
云监控显示通道数一直上升报警有影响吗? 一个连接最大通道数是2047(RabbitMQ 3.8.35版本)/2000(RabbitMQ AMQP-0-9-1版本),超过后再创建通道数会失败,建议排查是否为资源没有释放导致的。 父主题: 监控告警问题
设置预取值可以限制未被确认的消息个数,一旦消费者中未被确认的消息数量达到设置的预取值,服务端将不再向此消费者发送消息,除非至少有一个未被确认的消息被确认。设置预取值本质上是一种对消费者进行流控的方法。 设置预取值时,需要考虑多种因素: 预取值设置太小可能会损害性能,RabbitMQ会一直在等待获得发送消息的权限。
配置RabbitMQ死信消息 死信是RabbitMQ中的一种消息机制,在消费消息时,如果队列里的消息符合以下任意一种情况,该消息将成为“死信”。 “requeue”被设置为“false”,消费者使用“basic.reject”或“basic.nack”否定应答(NACK)消息。
使用RabbitMQ实例生产消费消息的流程如下图所示。 图1 RabbitMQ业务使用流程 创建用户并授权使用DMS for RabbitMQ 创建IAM用户,并授予DMS for RabbitMQ的权限,以达到用户之间权限的隔离。 购买RabbitMQ实例 RabbitMQ实例采用物理隔离
例。 API调用方法请参考如何调用API。 前提条件 已获取IAM的Endpoint,具体请参见地区和终端节点。 已获取RabbitMQ的Endpoint,具体请参见地区和终端节点。 创建RabbitMQ实例 如下示例是创建RabbitMQ实例的请求消息: { "name": "rabbitmq"
只会重试一次,重连失败后就不再执行。这时如果消费者没有做额外的重试机制,那么这个消费者就彻底断开与服务端的连接,无法消费消息。 amqp-client在节点断连后,根据与通道建立的节点不同,产生不同的错误。 如果通道连接的是队列所在的节点,消费者就会收到一个shutdown信号。
息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 {
通过以下任意一种方法,为RabbitMQ实例续费。 勾选RabbitMQ实例名称左侧的方框,可选一个或多个,单击信息栏左上侧的“续费”,弹出“续费”对话框,单击“是”,跳转到“续费”页面。 在待续费的RabbitMQ实例所在行,单击“更多 > 续费”,跳转到“续费”页面。 单击RabbitMQ实例名称,
绑定RabbitMQ Exchange 绑定Exchange是将Exchange和Exchange/Queue关联起来,在生产者发送消息到Exchange后,Exchange根据路由规则将消息发送到与其关联的Exchange/Queue中。 本章节指导如何在控制台绑定Exchan
购买RabbitMQ实例 RabbitMQ是一款基于AMQP(即Advanced Message Queuing Protocol)协议的开源服务,用于在分布式系统中存储转发消息。 RabbitMQ实例采用物理隔离的方式部署,租户独占RabbitMQ实例。支持用户自定义规格和自定
绑定RabbitMQ Queue 绑定Queue是将Exchange和Queue关联起来,在生产者发送消息到Exchange后,Exchange根据路由规则将消息发送到与其关联的Queue中。 本章节指导如何在控制台为Exchange绑定Queue,只有绑定Queue后,Exch
AMQP-0-9-1版本RabbitMQ与开源RabbitMQ的差异 AMQP-0-9-1版本RabbitMQ是一款基于高可用分布式存储架构实现的AMQP 0-9-1协议的消息产品,能够兼容开源的RabbitMQ客户端。与开源RabbitMQ相比,能够解决各种稳定性痛点(例如消息
配置RabbitMQ镜像队列 镜像队列是指允许集群将队列镜像到其他节点上,当集群某一节点宕机后,队列能自动切换到镜像中的其他节点,保证服务的可用性。 本章节指导如何在RabbitMQ WebUI为Vhost配置镜像队列策略,满足策略条件的队列将成为镜像队列。 约束与限制 RabbitMQ