知识卡片
RabbitMQ与Kafka的存储层级差异
内容
RabbitMQ的消息只能存储在队列这个物理实体中,生产者与消费者之间必须经过一个真实存在、可持久化的队列对象;这与Kafka把消息存储在topic这个逻辑层面不同——Kafka的队列(分区)只是topic实际存储文件里的位移标识,不是独立的存储实体。发散:这个差异决定了两者的扩展路径——RabbitMQ天然适合按队列做精细的路由与消费控制,而Kafka把存储和路由解耦到topic层,更适合按分区做水平扩展和顺序消费。
参考来源
《RabbitMQ实战指南》第2章《RabbitMQ入门》