zoukankan      html  css  js  c++  java
  • 为什么要使用消息队列

    回答这个问题的思路:

      有个什么业务场景,这个业务场景有个什么技术挑战,如果不用MQ可能会很麻烦,但是你现在用了MQ之后带给了你很多的好处。

    解耦

      使用MQ之前,A系统发送一个数据到BCD三个系统,通过接口调用发送,如果E也要这个数据,或者B又突然不要了,A还得去改代码

      而且A还得考虑其他系统挂了怎么办,超时怎么办

      使用MQ之后,系统A只负责发消息,对这个消息感兴趣的系统自己去拿到这个消息去消费

      系统A不用考虑自己要给谁去发数据

    异步

      使用MQ之前,A系统接收一个请求,需要在自己本地写库,还需要在BCD三个系统写库,总时长就会变的比较长,给用户的响应就会很慢

      使用MQ之后,系统A发完消息就可以给用户响应了,一些耗时的操作可以异步处理

    削峰

      比如双11零点的时候,大量用户同时发起请求,如果没有一些高并发处理,网站可能直接就崩溃了

      使用MQ之后,请求先写入MQ,系统A从MQ中慢慢拉取请求,保证高峰期系统不会挂

      虽然高峰期时,请求会在MQ中积压,但是高峰期过了之后,积压的请求会被慢慢处理掉

    转自:中华石杉Java工程师面试突击

  • 相关阅读:
    中台之交付
    mysql之事务
    中台之中台的设计
    0318 guava并发工具
    0312 java接口测试三棱军刺rest-assured
    0309 软件基本原理1
    0308 软件系统的非功能需求
    PELT(Per-Entity Load Tracking)
    CPU亲和度
    硬件相关知识随手笔记
  • 原文地址:https://www.cnblogs.com/mengchunchen/p/9996335.html
Copyright © 2011-2022 走看看