Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >聊聊Kafka的应用场景No.37

聊聊Kafka的应用场景No.37

作者头像
大蕉
发布于 2018-02-05 09:56:42
发布于 2018-02-05 09:56:42
2.7K1
举报

当当当,我又来啦。

Kafka是什么吖有小伙伴问。

顺手丢两个描述。

啊官网爸爸是这样说的:

Apache Kafka™ is a distributed streaming platform.

度娘是这样说的:

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据

大蕉是这样说的:

Kafka就是汪星人,有人丢飞盘就汪汪汪。

其实Kafka就是一个消息中间件,用来在进行N对N的消息传播,跟聊天室同一个道理,那么Kafka提供了什么样的功能呢?

  • It lets you publish and subscribe to streams of records. In this respect it is similar to a message queue or enterprise messaging system.
  • It lets you store streams of records in a fault-tolerant way.
  • It lets you process streams of records as they occur.

啊、能发布和订阅啦。

啊、消息能容错啦。

啊、有消息能及时处理啦。

啊是啦是啦、你最叻你最叻啦。

业界还有RabbitMQ,RocketMQ等,也都是很优秀的消息中间件。

使用的过程大概是这样的。大概生产者丢丢丢丢丢,消费者拿拿拿拿拿

突然收到启发,今天呢不打算讲原理,讲讲应用。

  • 应用场景一:日常系统解耦。

比如系统A有每次都有一个请求需要发送到系统B,而A又不需要等B的结果。这时候我们经常会起一个子线程或者丢入ThreadPool来完成这个工作。

有了Kafka,啊,A系统主线程直接丢给Kafka,完事。

B系统接收到消息就做后续操作。

这时候已经跟A没关系啦。

解耦,嗯,对。

完事。

  • 应用场景二:配置项更新

比如我们系统A有很多的配置项,传统的思路都是放在redis啊或者jvm内存啊,这样的,然后用定时任务去检查配置项有没有更新。或者直接改配置项重启完事。

太麻烦,太浪费了,一直在空跑。

可以这样:配置项放在Map里面,跑的时候直接去Map取。

有了Kafka,啊有配置项更新,直接丢个消息给Kafka。

这时候A系统接收到消息,就屁颠屁颠跑去更新缓存里的配置项啦。

高效,嗯,对。

完事。

跟应用场景二一样,也是线上有个模型,然后跑得好好的,现在需要更新,咋办?

可以这样:模型放在Map里面,跑的时候直接去Map取。

有了Kafka,啊有模型更新,直接丢个消息给Kafka。

系统就屁颠屁颠跑去重新加载模型了。

完事。

  • 应用场景四:Oracle库实时同步

这个就很少人能想到啦,如果我们在MongoDB有数据,需要实时跟Oracle保持一致,咋办咋办咋办?

可以这样,用Oracle的gg产生的日志文件,发送给kafka。

然后起个消费者,接收到日志文件就去操作MongoDB就可以啦。

完事。

  • 应用场景五:准实时Spark流计算。

这个没啥好说的,SparkStreaming自己去官网看。

完事。

昨天想了一下,握草,原来Kafka能干这么多事呢。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-08-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 一名叫大蕉的程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
配置项这个用kafka不是很合理吧,直接zk不是更合适么
配置项这个用kafka不是很合理吧,直接zk不是更合适么
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
消息队列Kafka - 应用场景分析
一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ
conanma
2022/04/07
9890
kafka和mq的应用场景_kafka和mq
在这个系列博客中,小编将向大家介绍一下一款吞吐超级大的消息中间件——kafka。 说到消息中间件MQ,小编也在前面的博客中介绍过 rocketMq,activeMq等等。
全栈程序员站长
2022/11/04
1.1K0
kafka和mq的应用场景_kafka和mq
kafka应用场景包括_不是kafka适合的应用场景
Kafka 是 linkedin 使用 Scala 编写具有高水平扩展和高吞吐量的分布式消息系统。
全栈程序员站长
2022/11/04
1.5K0
kafka的使用场景举例_kafka一般用来做什么
一、消息队列概述 消息队列中间件是分布式系统中重要的组件,主要解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。目前使用较多的消息队列有ActiveMQ,RabbitMQ,ZeroMQ,Kafka,MetaMQ,RocketMQ
全栈程序员站长
2022/11/04
4.7K0
kafka的使用场景举例_kafka一般用来做什么
kafka 主要内容介绍
根据官网的介绍,ApacheKafka®是一个分布式流媒体平台,它主要有3种功能:
庞小明
2018/07/30
8590
kafka 主要内容介绍
深度解析Kafka中消费者的奥秘
在消息传递的舞台上,消费者就像是大厨,负责烹饪流动的数据。这些数据的贪吃者在系统中扮演着至关重要的角色,为信息盛宴创造美味。本文将带你走进这个神奇的厨房,探寻消费者的奥秘。
一只牛博
2025/05/30
1350
深度解析Kafka中消费者的奥秘
Kafka的发布-订阅功能: Java实现与应用场景解析
Apache Kafka 是一个流行的分布式消息传递系统,广泛用于构建实时数据管道和流应用程序。它以高吞吐量、内置的分区、副本和容错性著称。Kafka 主要提供发布-订阅模式,这里我们将深入探讨 Kafka 的发布-订阅功能,通过一个 Java 代码示例和一个具体的应用场景。
GeekLiHua
2025/01/21
2510
【精选】由浅入深带你吃透MQ原理与应用场景
本文主要讲解 MQ 的通用知识,让大家先弄明白:如果让你来设计一个 MQ,该如何下手?需要考虑哪些问题?又有哪些技术挑战?
全栈程序员站长
2022/07/19
1.4K0
【精选】由浅入深带你吃透MQ原理与应用场景
01 . 消息队列之(Kafka+ZooKeeper)
Kafka最核心的最成熟的还是他的消息引擎,所以Kafka大部分应用场景还是用来作为消息队列削峰平谷。另外,Kafka也是目前性能最好的消息中间件。
iginkgo18
2020/09/27
1.1K0
01 . 消息队列之(Kafka+ZooKeeper)
Kafka和ActiveMQ相比有什么优势
Kafka和ActiveMQ是两种流行的消息中间件系统,都被广泛用于构建可扩展的、高性能的分布式应用。它们各自有着一些独特的优势和实现方式。
酒楼
2024/01/06
3360
kafka stream简要分析
kafka历史背景 Kafka是2010年Kafka是Linkedin于2010年12月份开源的消息系统,我接触的不算早,大概14年的时候,可以看看我们14年写的文章《高速总线kafka介绍》。 消息总线一直是作IT系统集成的核心概念,IBM/oracle等传统厂商都有相关中间件产品。传统消息中间件解决是消息的传输,一般支持AMQP协议来实现,如RabbitMQ。AMQP的主要特征是面向消息、队列、路由(包括点对点和发布/订阅)、可靠性、安全。AMQP协议更多用在企业系统内,对数据一致性、稳定性和可靠性要求
大数据和云计算技术
2018/03/08
1.3K0
kafka stream简要分析
Kafka快速上手基础实践教程(一)
最近好久没发文,感觉人都能变懒惰了,这次重新拾起学习消息队列kafka的决心,系统学习如何掌握分布式消息队列Kafka的用法,技多不压身,感兴趣的读者可以跟着一起学一学。
用户3587585
2022/08/30
5380
Kafka学习(二)-------- 什么是Kafka
通过Kafka的快速入门 https://www.cnblogs.com/tree1123/p/11150927.html
大数据流动
2019/08/08
6270
【Kafka系列】(一)Kafka入门
消息引擎系统(Message Broker System)是一种中间件软件或服务,用于在分布式系统中进行异步消息传递。它提供了可靠的消息传输、消息路由和消息处理的功能,使不同的应用程序和组件能够通过发送和接收消息进行通信。
程序员朱永胜
2023/09/06
4040
【Kafka系列】(一)Kafka入门
Kafka集群部署指南
Kafka是一个开源的分布式消息引擎/消息中间件,同时Kafka也是一个流处理平台。Kakfa支持以发布/订阅的方式在应用间传递消息,同时并基于消息功能添加了Kafka Connect、Kafka Streams以支持连接其他系统的数据(Elasticsearch、Hadoop等)
KenTalk
2019/07/09
4.6K0
Kafka集群部署指南
什么是Kafka?
通过Kafka的快速入门 https://www.cnblogs.com/tree1123/p/11150927.html
用户6070864
2019/08/20
6150
什么是Kafka?
kafka应用场景包括_什么是场景理论
Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。简单地说,Kafka就相比是一个邮箱,生产者是发送邮件的人,消费者是接收邮件的人,Kafka就是用来存东西的,只不过它提供了一些处理邮件的机制。
全栈程序员站长
2022/11/19
7440
kafka应用场景包括_什么是场景理论
kafka应用场景有哪些_kafka顺序性的消费
在学习一门新技术之前,我们需要先去了解一下这门技术的具体应用场景,使用它能够做什么,能够达到什么目的,学习kafka的初衷是用作消息队列;但是还可以使用Kafka Stream进行一些实时的流计算,多用于大数据处理;也可以做日志收集汇总、网站活动跟踪等任务。
全栈程序员站长
2022/11/04
4720
消息中间件 Kafka
消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。适用于需要可靠的数据传送的分布式环境。
京剧猫
2023/03/04
9580
消息中间件 Kafka
Kafka 是什么?
来源:https://www.jianshu.com/p/8d7f30f87f95
芋道源码
2018/12/04
8970
Kafka 是什么?
相关推荐
消息队列Kafka - 应用场景分析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档