十分钟入门消息中间件

本文介绍了消息中间件的基本概念、作用,以及如何实现高并发、高可用、高性能。重点讨论了Kafka、RabbitMQ和RocketMQ三种主流消息中间件的优劣,适合的场景以及如何选择合适的消息中间件。
摘要由CSDN通过智能技术生成

开足码力,码动人生,微信搜索【 程序员大帝 】,关注这个一言不合就开车的的代码界老司机
本文 GitHub上已经收录 https://github.com/BeKingCoding/JavaKing , 一线大厂面试核心知识点、我的联系方式和技术交流群,欢迎Star和完善

前言

我们知道订单系统堪称整个电商交易平台的核心,它需要与很多内部模块、外部第三方系统打交道。其实从下订单到支付完成这个过程中,需要完成很多额外的步骤:

  • 为用户积分

  • 发放红包卡券

  • 库存扣减

  • 通知物流系统

  • 发送短信通知

本文就以订单系统为基础,看完后相信你会对消息中间件的原理有更清晰的认识。本文将会从以下几个方面来讲述相关知识,相信大家耐心看了之后肯定有收获,码字不易,别忘了「在看」,「转发」哦。

  • 什么是消息中间件,消息中间件的作用
  • 实现三高(高并发、高可用、高性能)的策略
  • 消息中间件的种类
  • 如何选择合适的消息中间件

正文

01 什么是消息中间件

在这里插入图片描述
对于一个电商 APP 而言,每卖掉了一个商品,就要扣减掉商品的库存,而且一旦用户成功支付了,还需要将订单的状态更新成待发货。

在完成这些最核心的功能后,其实是有很多事情要做的,比如上图红色的部分。如果这些动作都以同步方式来完成,根据线上系统的一般统计,多个子步骤全部执行完毕,加起来大概需要1秒~2秒的时间。

有时候在高峰期并发量特别大,服务器的磁盘、IO、CPU 的负载会很高,执行 SQL 语句的性能也会有所下降。因此有的时候甚至需要几秒钟的时间完成上述几个步骤。

那么影响是什么呢?

想象一下,如果你是一个用户,在支付完一个订单之后,界面上会有一个圈圈不停的旋转,让你等待好几秒之后才能提示支付成功。对用户来说几秒钟的时间,会让人非常不耐烦的!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值