Kafka典型应用场景解析
创作时间:
作者:
@小白创作中心
Kafka典型应用场景解析
引用
1
来源
1.
https://support.huaweicloud.com/productdesc-kafka/kafka-scenarios.html
Apache Kafka是一种开源流处理平台,广泛应用于企业级消息传递和数据集成场景。本文将介绍Kafka在异步通信、错峰流控与流量削峰、日志同步等场景中的典型应用。
异步通信
在业务系统中,将非核心或不重要的流程部分通过消息异步通知的方式发给目标系统,可以使主业务流程无需同步等待其他系统的处理结果,从而提升响应速度。
例如,在用户注册场景中,当用户注册成功后,需要发送注册邮件与注册短信。通过Kafka消息服务,可以将这两个流程异步通知邮件发送系统与短信发送系统,从而提升注册流程的响应速度。
错峰流控与流量削峰
在电子商务系统或大型网站中,上下游系统处理能力存在差异。处理能力高的上游系统的突发流量可能会对处理能力低的某些下游系统造成冲击。通过Kafka队列服务可以堆积缓存订单等信息,在下游系统有能力处理消息的时候再处理,避免下游订阅系统因突发流量崩溃。
在商品秒杀、抢购等流量短时间内暴增场景中,为了防止后端应用被压垮,可在前后端系统间使用Kafka消息队列传递请求。
日志同步
在大型业务系统设计中,为了快速定位问题,全链路追踪日志,以及故障及时预警监控,通常需要将各系统应用的日志集中分析处理。
Kafka设计初衷就是为了应对大量日志传输场景,应用通过异步方式将日志消息同步到消息服务,再通过其他组件对日志做实时或离线分析,也可用于关键日志信息收集进行应用监控。
日志同步主要有三个关键部分:日志采集客户端、Kafka消息队列以及后端的日志处理应用。
- 日志采集客户端,负责用户各类应用服务的日志数据采集,以消息方式将日志“批量”、“异步”发送到Kafka客户端。
- Kafka客户端批量提交和压缩消息,对应用服务的性能影响非常小。
- Kafka将日志存储在消息文件中,实现日志的持久化存储。
- 日志处理应用,如Logstash,订阅并消费Kafka中的日志消息,最终供文件搜索服务检索日志,或者由Kafka将消息传递给Hadoop等其他大数据应用系统化存储与分析。
上图中Logstash、ElasticSearch分别为日志分析和检索的开源工具,Hadoop表示大数据分析系统。
热门推荐
左右脑的流行神话
IC采购时怎样知道所需芯片的合理价格范围
除了杨过,《倚天屠龙记》中还有一位独臂高手,竟是灭绝师太的人!
反式脂肪酸真的不安全吗
多发性肌炎的早期症状
光绪元宝福建省造库平一钱四分四极品
散光75度怎么治疗?医生的专业解答来了
酸辣风味的泰式冬阴功汤
收购购买时点的确定依据是什么?依据确定的收购购买时点存在哪些风险?
星越L和星瑞的配置差异分析
【世界地贫日】地中海贫血知多少
如何识别黄金市场的趋势与反转信号
什么是坐骨神经痛
降准前NCD震荡偏弱——货币市场观察
壁挂洗衣机怎么选?解锁小空间家居新方案
“防爆胎”真的不会爆?
意拳混元桩:四大经典意念,解锁凝神入静的秘密
iptables防火墙规则设置顺序详解
高三艺考生怎么复习文化课课程才有效果?
世界肾脏日:糖衣炮弹——糖尿病肾病知多少
如何在复杂的市场环境中把握投资机遇?
中国美术学院时尚设计学院《服装纹样设计》敦煌九色·风情南国
鼋头渚:太湖畔的樱花胜景
各类茶叶保质期大盘点:从绿茶到普洱茶的储存指南
李政道逝世:享年98岁,系首位华人诺奖得主,和杨振宁共同提出"宇称不守恒定律"
有恐惧症的人要怎样才能克服
英超第27轮前瞻:布伦特福德vs埃弗顿,两队状态正佳或将握手言和
提高太阳能电池板效率的 6 种方法
项目管理怎么和客户沟通
为什么药店老是推荐中成药?中成药选购时须知