rabbitmq面试

rabbitmq中的broker(英文翻译,碎片.在一些应用中通常是指服务器,比如集群中的一台或多台服务器统称broker)是什么,cluster(集群)又是指什么。

broker是指一个或多个erlang node的逻辑分组,且node上运行着rabbitmq应用程序。cluster是在broker的基础之上,增加了node之间共享元数据的约束。

RabbitMQ 上的一个 queue 中存放的 message 是否有数量限制?

可以认为是无限制,因为限制取决于机器的内存,但是消息过多会导致处理效率的下降。

rabbitmq和activemq有什么区别:

1.语言不同,rabbitmq使用erlang,activemq使用java。mq主要特点:
解耦、异步、削峰
经常拿来比较的这几个如下图所示:


image.png

2.activemq算是老牌的消息队列了,采用java编写,对JMS支持最好,采用多线程并发,资源消耗比较大,主语言是java,可以重点考虑。
缺点:由于历史悠久,历史包袱较多,版本更新缓慢,集群模式需要使用zookeeper实现。最新架构产品命名为Apollo,号称下一代activemq,目前案例较少。
3.rabbitmq,生态丰富,使用者众,AMQP协议的实现,支持多种场景
缺点:erlang开发,真正涉及到使用代码上是否能上手,虽然erlamg是天然集群化的,但rabbitmq在高可用方面做起来还不是特别得心应手。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容