大家好,我是【架构摆渡人】,一只十年的程序猿。这是消息队列的第一篇文章,这个系列会给大家分享很多在实际工作中有用的经验,如果有收获,还请分享给更多的朋友。
ActiveMQ
ActiveMQ是一个很老的消息队列了,我也只是在很老的一些系统里面见过它。无论是性能还是功能方面,确实没有跟上时代的节奏,社区也不活跃。大家可以去看看,在Github上的关注也就2K的数量。
对Java开发者来说,它最大的有点就是用Java开发的,阅读源码比较方便,其他就没啥优点了,所以也不建议大家现在用ActiveMQ来实现业务。
主页:https://github.com/apache/activemq
RabbitMQ
RabbitMQ使用的还是比较多的,至少在目前很多公司里也都在使用它。也有一定的社区活跃度,而且目前也一直在不断地更新优化。在Github上的关注已经达到了9.4K的数量,比ActiveMQ高了几倍。
对Java开发者来说,它最大的缺点就是开发语言不是Java,而是采用Erlang语言编写,阅读源码不是很方便。
主页:https://github.com/rabbitmq
Kafka
Kafka我相信大家就算没用过,也应该听说过。比如ELK中的K就是Kafka,在日志收集场景基本上都是用Kafka,因为有Kafka的强大吞吐量和完整的生态圈。Kafka的社