1.2 Kafka 简介
Last updated
Last updated
中间件(Middleware)是一类提供系统软件和应用软件之间连接、便于软件各部件之间的沟通的软件,应用软件可以借助中间件在不同的技术架构之间共享信息与资源。中间件位于客户机服务器的操作系统之上,管理着计算资源和网络通信。
简单来说,中间件实现了两个不同层次之间的解耦,它对各个部件之间的沟通做出了抽象和封装,隐藏了现实处理的部分细节。
Kafka 是一种高吞吐量的分布式发布订阅消息中间件,它可以处理消费者规模的网站中的所有动作流数据,同时具有诸如高性能、持久化、多副本备份、横向扩展等一系列能力。
就基本概念而言:
Kafka作为一个集群,运行在一台或者多台服务器上
Kafka 通过 topic 对存储的流数据进行分类
每条记录中包含一个key,一个value和一个timestamp(时间戳)
Kafka有四个核心的API:
The Producer API 允许一个应用程序发布一串流式的数据到一个或者多个Kafka topic
The Consumer API 允许一个应用程序订阅一个或多个 topic ,并且对发布给他们的流式数据进行处理
The Streams API 允许一个应用程序作为一个流处理器,消费一个或者多个topic产生的输入流,然后生产一个输出流到一个或多个topic中去,在输入输出流中进行有效的转换
The Connector API 允许构建并运行可重用的生产者或者消费者,将Kafka topics连接到已存在的应用程序或者数据系统