百度一下百度搜索网站,虚拟主机和服务器有什么区别,ppt模板做的好的网站有哪些,免费的模板下载2023-07-14#xff1a;讲一讲Kafka与RocketMQ中存储设计的异同#xff1f;
答案2023-07-14#xff1a; 在Kafka中#xff0c;文件的布局采用了Topic/Partition的方式#xff0c;每个分区对应一个物理文件夹#xff0c;且在分区文件级别上实现了顺序写入。然而#xff0…2023-07-14讲一讲Kafka与RocketMQ中存储设计的异同
答案2023-07-14 在Kafka中文件的布局采用了Topic/Partition的方式每个分区对应一个物理文件夹且在分区文件级别上实现了顺序写入。然而当一个Kafka集群拥有大量的主题和每个主题拥有数百个分区时在高并发写入消息的情况下IO操作会变得零散。这是因为消息的落盘策略导致磁盘IO的竞争变得激烈成为系统性能的瓶颈。实际上由于IO操作变得随机所以在消息写入时Kafka的IO性能会随着主题和分区数量的增加而先上升然后下降。
RocketMQ追求在消息写入时实现极致的顺序写。所有的消息都会按顺序写入commitlog文件不论主题或分区的数量增加都不会影响其顺序性。
在消息的发送和消费共存的场景中随着Topic数量的增加Kafka的吞吐量会急剧下降而RocketMQ则能够保持较为稳定的性能表现。因此Kafka更适用于少量Topic和消费端的业务场景而RocketMQ则更适合于涉及多个Topic和多个消费端的业务场景。