RabbitMQRabbitMQ

为什么要使用MQ

2019-08-02  本文已影响1人  奔跑的Robi

现在的互联网应用,分布式系统中都避不开两个要素,一个是高速的存储比如redis,memecache,另一个是消息队列,刚开始接触MQ是在刚毕业不到一年的时候,做一个政务系统,里面设计到了户籍验证,婚姻验证两个独立的工程,我在代码里找了半天找不到两个系统之间接收消息调用的接口,问老大,他说是靠订阅MQ来接收的,当时我一脸懵逼,,还有这种操作,,哈哈哈,现在想起来觉得好逗。

动机

按现在的行情,微服务化已经是个普遍趋势(可能过不了几年微服务都过时了,开始普遍ServiceMesh了)。每一个工程之间的功能都是尽可能独立的,系统和系统之间的调用按照传统做法最多的是使用httpclient,去直接远程调接口,但是这样做会产生一些问题:

作用

MQ的作用嘛,按照面试题的套路,无非是:解耦,异步,削峰。

优缺点

MQ是个神器,优点在上面已经说了,还是挺刚需的,要说缺点的话就是提高了系统的复杂度,因为在系统中添加进一个中间件,不可避免的就要开始考虑高可用,可靠性等问题。比如MQ本身的高可用,如何保证数据在链路中的一致性,如果保证数据不丢失。要因此写的处理逻辑会很多。

上一篇 下一篇

猜你喜欢

热点阅读