首页 > 其他分享 >kafka介绍

kafka介绍

时间:2023-10-20 09:26:09浏览次数:35  
标签:topics partition 介绍 kafka topic 事件 events

官网:https://kafka.apache.org/

Kafka是一个分布式事件流平台

1 介绍

核心特性:高吞吐量、弹性、持久化存储、高可用

事件流类似人类的中枢神经系统。越来越多的业务被软件实现和自动化,在此种情况下软件的用户还是软件。
技术上讲,事件流就是实时的从事件源(数据库,传感器,移动设备,云设备,软件系统)获取事件;持久化存储以备后续的获取;实时的操作、处理、响应事件流;把这些事件路由到其需要的地方。

简而言之,kafka是一个分布式系统,由servers和clients组成,他们之间通过tcp协议通信。其中servers可以由多个节点组成,这些节点可以跨数据中心。一些servers处于存储层称之为brokers,另一些运行Kafka Connect持续的进行事件流的进和出

2 主要概念

事件就是在你业务中“有些事情发生了”,我们也可以理解为一条记录或者一个消息。一个事件由:key,value,timestamp,header组成。

生产者是向kafka写events的客户端。消费者是订阅这些事件的客户端。

Events被组织和持久化在topics下。一个topics类似于文件系统中的文件夹,events类似于该文件夹中的文件。topics往往是multi-producer 和 multi-subscriber的。topics中的事件是持久化的,可以被消费任意多次而不会被删除,这和普通的消息队列不同。我们可以自己定义events被保存多久。即使是数据量升到很大也不会影响kafka的性能。

topic是分区(partition)的,一个topic会被分散到多个brokers上。这种分布式的数据存储方式对可伸缩性非常重要,因为它允许客户端同时从/向多个brokers读取和写入数据。当一个event被发布到一个topic后,它实际上只会追加到其中一个partition中。具有相同event key的事件会写入相同的partition中。并且kafka保证每一个partition中的event都会被顺序消费。

为了提高容错性和高可用性,每个topic可以是副本集,甚至可以跨地理区域或数据中心。

 

标签:topics,partition,介绍,kafka,topic,事件,events
From: https://www.cnblogs.com/zhenjingcool/p/17776245.html

相关文章

  • python sys.path介绍
    pythonsys.path介绍介绍当我们导入模块时,python解释器会通过sys.path中的环境变量搜索。sys.path是一个列表,里面包含已添加到环境变量中的路径。使用sys.path.append({路径})可以往里面添加自定义的环境变量。使用当我们想要导入某个文件中的文件失败时,可以将其文件夹路......
  • DLL注入总体介绍
    一.DLL注入应用:改善功能与修复Bug:可以使用DLL注入技术为程序添加新功能(类似于插件),或者修改有问题的代码、数据等。消息钩取:windowsos自带的消息钩取功能就是一种dll注入技术,它自带了一些dll文件,我们只需要编写函数将其注入就可以。比如说后面会提到的键盘消息钩取。监视......
  • 二、关于python语言的介绍与安装
    二、关于Python语言的介绍与安装1.什么是Python语言?在前面我们知道了,Python就是我们用于与计算机进行交流的语言,这里我们在解释一下,Python有一个软件我们叫做解释器的东西,这就是把我们编写的代码转换成计算机语言,让计算机能看懂,怎么运行的呢,在目前的高级语言由大致分为两种解释......
  • 基本介绍
    基本介绍简介:C++是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程语言,支持过程化编程、面向对象编程和泛型编程。C++是C的一个超集,事实上,任何合法的C程序都是合法的C++程序。(注意:使用静态类型的编程语言是在编译时执行类型检查,而不是在运行时执行类型检查。......
  • 205-303 K8S API资源对象介绍03 (Job CronJob Endpoint ConfigMap Secret) 2.17-3.3
    一、水平自动扩容和缩容HPA(K8S版本>=1.23.x)HPA全称HorizontalPodAutoscaler,Pod水平自动伸缩,HPA可以基于CPU利用率replicationcontroller、deployment和replicaset中的pod数量进行自动扩缩容。pod自动缩放对象适用于无法缩放的对象,比如DaemonSetHPA由KubernetesAPI资源和控......
  • MT8195安卓核心板性能如何?MTK8195核心板规格参数介绍
    MT8195安卓核心板是一款基于台积电6nm工艺制造的先进芯片。它采用4个Cortex-A78大核和4个Cortex-A55小核,搭配Mali-G57MC5GPU和APU3.0,算力高达4TOPs。该核心板支持四通道LPDDR4X2133MHz内存、三屏输出、杜比视界、7.1环绕声音频和硬件视频解码。它适用于各种应用,包括视频......
  • zokeeper和kafka关系
    在部署Kafka时,有必要同时部署ZooKeeper是因为Kafka使用ZooKeeper来管理和协调其集群的状态和配置信息。ZooKeeper是一个分布式协调服务,在Kafka中被用作集群协调器。Kafka集群中的每个节点都会与ZooKeeper进行通信,以共享元数据信息、协调leader选举、检测节点故障......
  • Kafka 消费者组
    一个分区对不同消费组是共享的,对同一个消费组里的消费者是互斥的;    参考文章【1】https://cloud.tencent.com/developer/article/1540509......
  • 循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(10) -- 在Dat
    有时候,一些数据的录入可能需要使用表格直接录入会显得更加方便快捷,这种情况有时候也是由于客户使用习惯而提出,本篇随笔介绍在WPF应用端上使用DataGrid来直接新增、编辑、保存数据的处理。录入数据的时候,我们都采用在一个窗体界面中,根据不同内容进行录入,但是有时候涉及主从表的数......
  • RHCE 9.0课程介绍|红帽新版学什么内容
    一、红帽公司介绍红帽是首个(也是全球最大、全球领先)的企业开源软件解决方案提供商,在过去20几年里,红帽已经成为开源社区里令人尊敬的成员,赞助了数百个开源项目,并为数千个项 目贡献代码。屡获殊荣的支持、培训和服务使红帽成为《财富》500强企业信赖的顾问。2018年10月28日,IBM......