检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
表1 RabbitMQ最佳实践一览表 最佳实践 说明 实现网络异常时RabbitMQ客户端自动恢复 本章节提供了客户端重连示例代码,使客户端在网络异常导致连接断开时自动恢复连接,降低网络故障对业务的影响。
心跳还可以防止某些网络设备在一段时间内由于没有活动而中断TCP连接。开启心跳的方法为在连接上指定心跳超时时间。 心跳超时时间定义了对等TCP连接在多长时间后被服务端和客户端视为关闭。服务端和客户端会对配置的心跳超时时间进行协商,客户端必须配置该值来发送心跳。
连接实例 配置RabbitMQ网络连接 配置RabbitMQ访问控制 配置RabbitMQ客户端心跳超时时间 使用客户端连接RabbitMQ(关闭SSL) 使用客户端连接RabbitMQ(开启SSL)
例如在支付场景下,用户购买商品后进行支付,由于网络不稳定导致用户收到多次扣款请求,导致重复扣款。但实际上扣款业务只应进行一次,商家也只应产生一条订单流水。这时候使用消息幂等就可以避免这个问题。
static final Logger LOG = LoggerFactory.getLogger(ProducerController.class); @Autowired private RabbitTemplate; @GetMapping(value
在单可用区或多可用区中部署实例 副本冗余 副本通过数据同步的方式保持数据一致,当网络发生异常或节点故障时,通过冗余副本自动故障切换,并且故障恢复后会从leader副本进行数据同步,保持数据一致性。
final Channel _channel; private final Connection _connection; public CustomConsumer(Channel channel, Connection connection)
审计 云审计服务(Cloud Trace Service,CTS),是华为云安全解决方案中专业的日志审计服务,您可以通过CTS对RabbitMQ实例的操作记录进行收集、存储和查询,用于安全分析、合规审计、资源跟踪和问题定位等。 支持区域: 全部 支持云审计的操作列表有哪些?
监控和告警 支持对RabbitMQ实例状态进行监控,支持对集群每个代理的内存、CPU、网络流量等进行监控。如果集群或节点状态异常,将触发告警。
public class ConsistentHashExchangeExample1 { private static String CONSISTENT_HASH_EXCHANGE_TYPE = "x-consistent-hash"; public static void
购买区域、可用区、虚拟私有云、子网、安全组与RabbitMQ实例保持一致,规格为16U32G,Linux系统的ECS服务器,具体步骤请参考购买弹性云服务器。 购买完成ECS后,需要在ECS中完成以下配置: 安装Java JDK,并配置JAVA_HOME与PATH环境变量。
如果您的处理时间和网络状态稳定,则只需将总往返时间除以每条消息在客户端的处理时间即可获得估计的预取值。 在消费者多且处理时间短的情况下,建议使用较低的预取值。过低的预取值会使消费者闲置,因为消费者在处理完消息后需要等待下一批的消息到达。
>0 RabbitMQ实例节点 1分钟 rabbitmq_node_bytes_in_rate 网络入流量 统计Rabbitmq节点每秒网络访问流入流量。 单位:Byte/s、KB/s、MB/s、GB/s 说明: 2020年6月及以后购买的实例,支持此监控项。
公共成本是指多个部门共享的计算、网络、存储或资源包产生的云成本,或无法直接通过企业项目、成本标签分配的云成本。这些成本不能直接归属于单一所有者,因此不能直接归属到某一类别。使用拆分规则,可以在各团队或业务部门之间公平地分配这些成本。详细介绍请参见使用成本单元查看成本分配。
同样地,主副本的选举也需要超过半数的副本同意,这会避免出现网络分区时,队列存在2个主副本。由此可见,仲裁队列相对于可用性更看重一致性。
状态码 状态码如表1所示 表1 状态码 状态码 编码 错误码说明 100 Continue 继续请求。 这个临时响应用来通知客户端,它的部分请求已经被服务器接收,且仍未被拒绝。 101 Switching Protocols 切换协议。只能切换到更高级的协议。 例如,切换到HTTP