kafka学习
kafka学习
蜡笔小鑫 发表于3个月前
kafka学习
  • 发表于 3个月前
  • 阅读 2
  • 收藏 0
  • 点赞 0
  • 评论 0

kafka用于构建实时数据管道和流程序。它具有横向伸缩性、容错性、快速性,并在数千家公司中运行。

如图所示:

             

1.介绍

kafka是一个分布式流平台,确切的意思是什么?

我们认为一个流平台要有三个关键能力:

1.它允许发布和订阅记录流。在这方面,它类似于消息队列或企业消息系统。

2.它允许你以容错的方式存储记录流.

3.它允许你处理记录发生时的流。

kafka的优势是什么?

它广泛用于两大类应用程序:

1.构建实时流数据管道,在系统或应用程序之间可靠地获取数据。

2.构建对数据流进行转换或响应的实时流应用程序.

为了理解卡夫卡是如何做到这些的,让我们深入探究卡夫卡的自下而上的能力。

  • kafak是运行在一台或多台服务器上的集群。
  • 在类别称为主题的记录kafka集群存储流。
  • 没条记录包含一个关键字、值、和时间戳。

kafka 有4个核心的api:

  • 生产者api:允许应用发布记录流到一个或多个主题。
  • 消费者api:允许应用程序订阅一个或多个主题和处理生产记录流。
  • 流API:允许应用程序充当流处理器,消耗来自一个或多个主题的输入流,并向一个或多个输出主题生成输出流,有效地将输入流转换为输出流。
  • 连接器API:允许构建和运行可重用的生产者或消费者,它们将卡夫卡主题连接到现有应用程序或数据系统。例如,一个连接到一个关系数据库可能会捕捉每一个变化表。

关系如图:

           

 

在kafka中,客户机和服务器之间的通信是通过一个简单的、高性能的、与语言无关的tcp协议完成的。该协议是版本控制的并保持与旧版本的向后兼容性。我们提供kafka java客户端,但客户端支持多种语言。

 

共有 人打赏支持
粉丝 2
博文 6
码字总数 1186
×
蜡笔小鑫
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: