如果让你来开发一个消息队列中间件,你会怎么设计架构? 新生代农民工 2021-08-11 357 阅读1分钟 我们一般从一下几个角度考虑 首先这个mq得支持可伸缩性吧,就是需要得时候快速扩容,就可以增加吞吐量和容量,那怎么搞设计一个分布式得系统呗,参照一下kafka的设计理念 其次你得考虑一下mq的数据要不要落地磁盘?那肯定要了,落磁盘,才能保证数据不丢失,那落磁盘的时候怎么落啊?顺序写,这样就没有磁盘随机读写的寻址开销,磁盘顺序读写的性能是很高的,这就是kafka的设计思路 其次你的考虑一下mq的可用性啊 能不能支持数据0丢失啊等