检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
如果您持有多台到期日不同的RabbitMQ实例,可以将到期日统一设置到一个日期,便于日常管理和续费。 图5展示了用户将两个不同时间到期的资源,同时续费一个月,并设置“统一到期日”后的效果对比。 图5 统一到期日 更多关于统一到期日的规则请参见如何设置统一到期日。 父主题: 续费
aders属性键值对和绑定的属性键值对进行匹配,根据匹配情况路由消息。 自动删除 是否开启自动删除Exchange。 开启:当最后一个绑定的Queue与Exchange解除绑定后,该Exchange会被自动删除。 不开启:当最后一个绑定的Queue与Exchange解除绑定后,不会删除该Exchange。
图3 设置Exchange持久化(控制台) 设置成功后如图4所示。 图4 持久化的Exchange(控制台) 设置Queue持久化 在RabbitMQ WebUI页面设置Queue持久化。 创建Queue时,设置“durable”为“true”,如图5所示。 图5 设置Queue持久化(WebUI)
RabbitMQ相关概念 华为云使用RabbitMQ作为消息引擎,RabbitMQ是一个生产者和消费者模型,主要负责接收、存储和转发消息。以下概念基于RabbitMQ进行描述。 消息 消息一般分为两部分,消息体和标签,标签主要用来描述这条消息,消息体是消息的内容,是一个JSON体或者数据等。
在单可用区或多可用区中部署实例 副本冗余 副本通过数据同步的方式保持数据一致,当网络发生异常或节点故障时,通过冗余副本自动故障切换,并且故障恢复后会从leader副本进行数据同步,保持数据一致性。 设置实例镜像队列 设置实例仲裁队列 数据持久化 业务系统日常运行中可能出现一些小概率的异常事件。部分可靠性要求非
2u4g.cluster*3。 Exchange:类型为“direct”,非持久化,不会自动删除。 队列:经典队列、惰性队列和镜像队列设置为非持久化,会自动删除。仲裁队列设置为持久化、不会自动删除。 表6 测试结果 生产者数量 消费者数量 队列数量 队列类型 生产速率 消费速率 3
进入“费用中心 > 续费管理”页面。 自定义查询条件。 可在“到期转按需项”页签查询已经设置到期转按需的资源。 可对“手动续费项”、“自动续费项”、“到期不续费项”页签的资源设置到期转按需的操作。 设置包年/包月资源到期后转按需。 单个资源到期转按需:选择需要更改计费模式的RabbitMQ实例,单击操作列“更多
性IP。 开启公网访问功能大约需要10~30s,请耐心等待。开启公网访问后,页面会自动跳转到“后台任务管理”页签,当任务状态为“成功”时,表示开启公网访问成功。 在RabbitMQ实例的安全组中设置如表1所示规则后,才能成功通过IPv4弹性IP地址连接RabbitMQ。 表1 安全组规则
消费者与队列间的订阅异常:建议排查队列和消费者之间的订阅是否正常。 消费端的代码本身逻辑耗费时间长:建议给消息设置过期时间,设置方法如下: 在生产消息时,设置消息过期时间。消息过期时间以expiration值体现。 在properties中设置expiration值,单位为毫秒(ms)。 AMQP.BasicProperties
消息创建时间在哪设置? 消息创建时间是由生产客户端在生产消息时设置的。 父主题: 消息问题
照如下规则为您计算变更费用: 资源升配:新配置价格高于老配置价格,此时您需要支付新老配置的差价。 资源降配:新配置价格低于老配置价格,此时华为云会将新老配置的差价退给您。 这里以资源升配且无任何优惠的场景为例,假设您于2023/04/08在“华北-北京四”区域购买了一个包年/包月RabbitMQ实例(rabbitmq
如消息和日志等)都保存在云硬盘中。 云审计(Cloud Trace Service) 云审计为您提供云服务资源的操作记录,记录内容包括您从华为云管理控制台或者开放API发起的云服务资源操作请求以及每次请求的结果,供您查询、审计和回溯使用。 虚拟私有云 RabbitMQ实例运行于虚
实现RabbitMQ节点重启后消费者自动重连 方案概述 RabbitMQ的amqp-client虽然自带重连机制,但是自带的重连机制只会重试一次,重连失败后就不再执行。这时如果消费者没有做额外的重试机制,那么这个消费者就彻底断开与服务端的连接,无法消费消息。 amqp-clien
配置仲裁队列 在声明队列时,将队列的“x-queue-type”参数设置为“quorum”。此参数只能在声明队列时设置,不能通过Policy设置。 仲裁队列默认的复制因子是5。 以下示例演示在Java客户端设置仲裁队列。 ConnectionFactory factory = n
AMQP-0-9-1版本只支持在控制台创建Vhost。 约束与限制 实例创建后,RabbitMQ 3.x.x版本会自动创建一个名为“/”的Vhost,RabbitMQ AMQP-0-9-1版本会自动创建一个名为“default”的Vhost。 创建RabbitMQ Vhost(控制台) 登录管理控制台。
发布到Queue的消息在被丢弃之前可以存活多长时间 lazy_mode 否 String 若设置惰性队列,请输入lazy。惰性队列模式会在磁盘上存储尽可能多的消息以减少内存使用;若不设置,队列将消息存储在内存缓存以尽可能快地传递消息。(AMQP版本默认将消息存储到磁盘,不涉及此字段)
RabbitMQ实例进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),如果华为账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用DMS for RabbitMQ实例的其它功能。 默认情
时间间隔大于90s的场景,请在客户端开启心跳并设置小于90s的心跳超时时间,防止客户端断连。如果心跳超时时间设置过低,在短暂网络抖动情况下可能会导致连接重建。如果心跳超时时间设置过长,可能导致集群进行主备切换时感知时间过长。推荐设置心跳超时时间为10s。 什么是心跳 Rabbit
RabbitMQ实例是否支持持久化,如何定时备份数据? RabbitMQ支持消息数据持久化,可从客户端连接RabbitMQ并设置消息持久化,也可在RabbitMQ集群管理工具界面创建队列时设置消息持久化。 不支持客户自定义定时备份数据,或从界面触发备份数据。 父主题: 实例问题
3.x.x版本 一般情况下消息如果未被消费会一直保留,只有被消费后,才会被删除。但是如果设置了过期时间(TTL),则以TTL时间为准。 RabbitMQ AMQP-0-9-1版本 如果消息设置了TTL,无论消息是否被消费,超过TTL后,消息将被删除或存入死信队列。TTL默认为48小时。