zoukankan      html  css  js  c++  java
  • MQ的架构作用

    1. 消息队列的作用

    消息中间件是日常架构中比较流行的一个中间件。

    常用的产品有: ActiveMQ, RabbitMQ, RocketMQ, ZeroMQ等。

    那么消息中间件在架构中有哪些作用呢?

    总结一下,主要作用如下:

       异步处理、应用解耦、流量削峰、日志处理

    2. 架构作用详解

    a. 异步处理

    问题背景:

    一个用户登陆网址注册,然后系统发短信跟邮件告知注册成功。

    解决方案:

    1. 串行

      依次执行,问题是用户注册后就可以使用了,没必要等验证码跟邮件。

    2. 并行
     注册成功后,邮件跟验证码用并行等方式执行,问题是邮件跟验证码是非重要的任务,系统注册还要等这俩完成么?

    3. 异步
     基于异步MQ的处理,用户注册成功后直接把信息异步发送到MQ中,然后邮件系统跟验证码系统主动去拉取数据。

    3种解决方案图解: 

    b. 应用解耦

    问题背景:

    我们有一个订单系统,还要一个库存系统,用户下订单了就要调用下库存系统来处理,直接调用到话库存系统出现问题咋办呢?

    解决方案:

    利用MQ来解耦

    解决方案图解: 

      

    c. 流量削峰

    问题背景:
    秒杀活动
    服务层直接接受瞬间搞密度访问绝对不可以

    解决方案:
    利用MQ进行流量削峰

    解决方案图解:

    d. 日志处理 

    问题背景:

    用户或机器日志收集

    解决方案图解:

    技术改变世界
  • 相关阅读:
    RIP2与OSPFv2 动态路由协议区别
    Linux平台下SSD的TRIM指令的最佳使用方式(不区别对待NVMe)
    MLNX网卡驱动安装
    字符串/字符数组读入(char/string)
    【NOIP2016模拟3】图书列表
    活动选择-贪心
    数列极差问题-STL优先队列-贪心
    货物搬运-贪心
    【NOIP 2002提高】均分纸牌-贪心
    【HAOI2008】糖果传递-贪心
  • 原文地址:https://www.cnblogs.com/davidgu/p/14479202.html
Copyright © 2011-2022 走看看