滴滴社招面试题:为什么用RabbitMQ

1.为什么要用MQ?为什么要用RabbitMQ?

mq的本质是解决通信问题滴滴社招面试题:为什么用RabbitMQ

不同语言编写的软件集成在一起。起到一个代理的作用.

broker名字的由来!帮助我们转发消息!

2.MQ有什么作用!使用mq实现了什么样的业务目的?

金融机构和人民银行通信,就是用的一个重量级的mq。

协议不统一。tcp承受的访问压力太大,所以使用mq异步的通信方式。

异步转账

转账成功,具体到账时间以对方行为准

MQ低延迟 ms

滴滴社招面试题:为什么用RabbitMQ

多线程或者线程池会引起线程管理的麻烦滴滴社招面试题:为什么用RabbitMQ

 消息队列独立运行的服务器上

message queue 队列,有个基础属性,FIFO

京东淘宝有峰值,如果都发送到后端,会造成服务器的崩溃,但是又不能拒绝,可以削峰。

削峰:讲前端的请求变成消息,发送到mq,后台的服务器再按照自己的能力处理。

为什么要用mq?1.在系统之间实现异步的通信 。2.实现系统依赖关系的结偶。3.削峰。

JMS : Java Message Service  缺点:跟java语言绑定的。不能真正的实现跨语言跨平台。最多算一个API.

想用相同的接口,对接不同的mq的产品。

AMQP: Advanced Message Queue Protocal 高级消息队列协议。 跨语言 、跨平台 。工作在应用层。

附:应用层协议 http stmp