消息队列面试题整理

RabbitMQ为什么要使用channel,而不是TCP直接连接?

  1.TCP连接的建立和销毁,开销比较大;

  2.如果使用TCP直连,那么高峰期,会与RabbitMQ服务器建立大量的TCP连接,资源的开销会特别高;

  3.channel的原理是:一个线程使用一个channel,多个线程也就是多个channel,而这多个channel使用同一个TCP连接,这样可以节省一定资源,避免建立大量TCP连接;另外,一个TCP连接可以有成千上万个信道,大量的请求(其实是只有一个TCP连接),不会存在性能瓶颈。

 

问什么要使用消息队列(使用场景)?

  1.流量削锋;

  2.解耦;

  3.同步变异步;

 

各种MQ的优缺点?区别?

  1.

 

怎么保证MQ的高可用

 

怎么保证消息不被重复消费

 

posted @ 2018-09-08 19:11  寻觅beyond  阅读(166)  评论(0)    收藏  举报
返回顶部