关于MQ使用的清单

作者: 李龙杰 | 来源:发表于2017-09-24 17:55 被阅读40次

    关于使用消息队列的清单

    消息队列,英文:MessageQueue,下面简称MQ.

    这里的MQ是指分布式系统下的消息系统.

    是什么MQ

    MQ是一种用来进行应用间通信的组件.如下图

    什么时候用RPC,什么时候用MQ

    判断依据:应用A是否依赖应用B的结果.如果依赖,必须使用RPC,如果不依赖,可以使用MQ.

    MQ典型使用场景

    发布订阅模型

    当应用A的信息被多个应用所需要的时候,我们可以通过MQ的广播特性来实现.相比于调用三次RPC,应用A与BCD没有耦合.并且响应速度也会大概率优于三次RPC.

    削峰

    当应用A的流量突增,而应用B没有任何限流措施的情况下,应用B可能会被打死.而进一步带崩A.

    这种场景,我们可以使用MQ来进行缓冲请求,让应用B按照自己的速度处理.也可以有足够的时间进行扩容.

    注意事项

    1. MQ为了保证消息必达,一般都会重复发送.所以要在应用层面考虑做幂等.
      具体做法可以根据消息内容生成全局的id.第二次遇到就不处理.

    相关文章

      网友评论

        本文标题:关于MQ使用的清单

        本文链接:https://www.haomeiwen.com/subject/neeidxtx.html