消息队列系统存储架构演进

消息队列(Message Queue)是一种在消息的传递过程中存储消息的机制,广泛应用于系统解耦、流量削峰、数据同步等场景。本文将重点讨论三种流行的消息队列技术的存储架构(RocketMQ、Kafka和Pulsar)以及当前的演变趋势。

Read more

RabbitMQ持久化机制

之前其实已经写过一篇关于RabbitMQ持久化的文章,但那篇文章侧重代码层面的写入流程,对于持久化操作何时发生以及什么时候会刷新到磁盘等问题其实都没有搞清楚,这篇文章着重于关注这些问题。

Read more

RabbitMQ HA机制

RabbitMQ为了保证消息不丢失,提供了高可用机制,或者称为镜像队列,详细文档可以参考这里,本文试图搞清楚其实现细节。

Read more

队列系统问题总结

概述

对队列系统至今出现的各种问题进行总结。这个系统主要是分为这么几个部分:

  • RabbitMQ:消息broker;
  • Proxy:架在RabbitMQ前面,主要作用是负载均衡及高可用:消息可以路由到后端多个结点,任一结点的异常不会影响客户端;并且可以让RabbitMQ更方便的进行水平扩展;
  • 客户端SDK:为了避免让产品方了解AMQP协议的细节(Exchange、bindings等),对标准的RabbitMQ客户端进行封装,只提供两个简单的接口:sendMessage,consumeMessage,并提供配置选项来定制客户端的行为。
Read more