分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

RabbitMQ vs Apache Kafka

发布时间:2023-09-06 02:12责任编辑:顾先生关键词:暂无标签

1. Why do we need MQ?

(1) 消峰填谷

以订单系统和结算系统场景为例,如果订单系统通过RPC框架来调用结算系统,
在有高峰促销的情况下生成订单的量会非常大,而且由于生成订单的速度也非常快,
这样势必会给结算系统造成系统压力,服务器利用率则会偏高,但在不是高峰的时间点订单量比较小,
结算系统的服务器利用率则会偏低。

通过MQ的方式,将订单存储到MQ队列中,消费端通过拉取的方式,并且拉去速度有消费端来控制,则就可以控制流量趋于平稳。
这样对于结算系统来讲,就达到了削峰填谷的目的。或者说起到了流控的目标。

2. MQ Selection?

   (1)Scene

   RabMQ: Focus on standards(AMQP)

   Kafka:Focus on Application

   (2)Performance

   RabMQ: 20k- /s

   Kafka:   100k- /s 

    (3) Architecture and Design

Reference:

    1.《如何优雅的使用MQ-详述功能场景 - 王新栋》

    2.《Understanding When to use RabbitMQ or Apache Kafka》

RabbitMQ vs Apache Kafka

原文地址:https://www.cnblogs.com/xiaobin-hlj80/p/9544039.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved