查看“Kafka介绍”的源代码
←
Kafka介绍
跳到导航
跳到搜索
因为以下原因,您没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看和复制此页面的源代码。
Kafka 是最初由领英(Linkedin)公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于 ZooKeeper 协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景: 比如基于 hadoop 的批处理系统、低延迟的实时系统、Storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用 scala 语言编写,LinkedIn 于2010年贡献给了 Apache 基金会并成为顶级开源项目。 === Kafka 的使用场景 === 日志收集:一个公司可以用 Kafka 收集各种服务的 log,通过 Kafka 以统一接囗服务的方式开放给各种 consumer,例如 hadoop、Hbase、Solr等。 消息系统:解耦和生产者和消费者、缓存消息等。 用户活动跟踪:Kafka 经常被用来记录 Web 用户或者 app 用户的各种活动,如浏览网页、搜索、点击等活动,这些活动信息被各个服务器发布到 Kafka 的 topic 中,然后订阅者通过订阅这些 topic 来做实时的监控分析,或者装载到hadoop、数据仓库中做离线分析和挖掘。 运营指标:Kafka 也经常用来记录运营监控数据。包括收集各种分布式应用的数据,生产各种操作的集中反馈,比如报警和报告。 === Kafka基本概念 === Kafka 是一个分布式的,分区的消息(官方称之为commit log)服务。 它提供一个消息系统应该具备的功能,但是确有着独特的设计。 可以这样来说,Kafka 借鉴了 JMS 规范的思想,但是确并'''<big>没有完全遵循 JMS 规范</big>'''。 首先,让我们来看一下基础的消息(Message)相关术语: {| class="wikitable" |+相关术语 !名称 !解释 |- |Broker |消息中间件处理节点,一个 Kafka 节点就是一个 broker,一个或者多个Broker可以组成一个 Kafka 集群 |- |Topic |Kafka 根据 topic 对消息进行归类,发布到 Kafka 集群的每条消息都需要指定一个 topic |- |producer |消息生产者,向 Broker 发送消息的客户端 |- |Consumer |消息消费者,从 Broker 读取消息的客户端 |- |ConsumerGroup |每个 Consumer 属于一个特定的 ConsumerGroup,一条消息可以被多个不同的 ConsumerGroup 消费,但是一 TConsumerGroup 中只能有一个 Consumer 能够消费该消息 |- |Partition |物理上的概念,一个 topic 可以分为多个 partition ,每个 partition 内部消息是有序的 |}
返回至
Kafka介绍
。
导航菜单
个人工具
登录
名字空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
Spring Boot 2 零基础入门
Spring Cloud
Spring Boot
设计模式之禅
VUE
Vuex
Maven
算法
技能树
Wireshark
IntelliJ IDEA
ElasticSearch
VirtualBox
软考
正则表达式
程序员精讲
软件设计师精讲
初级程序员 历年真题
C
SQL
Java
FFmpeg
Redis
Kafka
MySQL
Spring
Docker
JMeter
Apache
Linux
Windows
Git
ZooKeeper
设计模式
Python
MyBatis
软件
数学
PHP
IntelliJ IDEA
CS基础知识
网络
项目
未分类
MediaWiki
镜像
问题
健身
国债
英语
烹饪
常见术语
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息