kafka的主要作用_通俗的讲kafka是干什么的

kafka的主要作用_通俗的讲kafka是干什么的作者:宝哥-NO1blog.csdn.net/code52/article/details/504755111、kafka是什么?Kafka是由LinkedIn开发的一个分布式基于发布/订…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

kafka的主要作用_通俗的讲kafka是干什么的

作者:宝哥-NO1

blog.csdn.net/code52/article/details/50475511

1、kafka是什么?

Kafka是由LinkedIn开发的一个分布式基于发布/订阅的消息系统,使用Scala编写,它以可水平扩展和高吞吐率而被广泛使用。

2、产生背景

Kafka是一个消息系统,用作LinkedIn的活动流(Activity Stream)和运营数据处理管道(Pipeline)的基础。活动流数据是几乎所有站点在对其网站使用情况做报表时都要用到的数据中最常规的部分。

活动数据包括页面访问量(Page View)、被查看内容方面的信息以及搜索情况等内容。这种数据通常的处理方式是先把各种活动以日志的形式写入某种文件,然后周期性地对这些文件进行统计分析。

运营数据指的3是服务器的性能数据(CPU、IO使用率、请求时间、服务日志等等数据)。运营数据的统计方法种类繁多。

3、基本架构图

kafka的主要作用_通俗的讲kafka是干什么的

4、基本概念解释

1)Broker

Kafka集群包含一个或多个服务器,这种服务器被称为broker。broker端不维护数据的消费状态,提升了性能。直接使用磁盘进行存储,线性读写,速度快:避免了数据在JVM内存和系统内存之间的复制,减少耗性能的创建对象和垃圾回收。

2)Producer

负责发布消息到Kafka broke

3)Consumer

消息消费者,向Kafka broker读取消息的客户端,consumer从broker拉取(pull)数据并进行处理。

4)Topic

每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)

5)Partition

Parition是物理上的概念,每个Topic包含一个或多个Partition.

6)Consumer Group

每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)

7)Topic & Partition

Topic在逻辑上可以被认为是一个queue,每条消费都必须指定它的Topic,可以简单理解为必须指明把这条消息放进哪个queue里。为了使得Kafka的吞吐率可以线性提高,物理上把Topic分成一个或多个Partition,每个Partition在物理上对应一个文件夹,该文件夹下存储这个Partition的所有消息和索引文件。

若创建topic1和topic2两个topic,且分别有13个和19个分区,则整个集群上会相应会生成共32个文件夹(本文所用集群共8个节点,此处topic1和topic2 replication-factor均为1)。

5、适用场景

1、Messaging

对于一些常规的消息系统,kafka是个不错的选择;partitons/replication和容错,可以使kafka具有良好的扩展性和性能优势.不过到目前为止,我们应该很清楚认识到,kafka并没有提供JMS中的”事务性””消息传输担保(消息确认机制)””消息分组”等企业级特性;kafka只能使用作为”常规”的消息系统,在一定程度上,尚未确保消息的发送与接收绝对可靠(比如,消息重发,消息发送丢失等)

2、Website activity tracking

kafka可以作为”网站活性跟踪”的最佳工具;可以将网页/用户操作等信息发送到kafka中.并实时监控,或者离线统计分析等

3、Metrics

Kafka通常被用于可操作的监控数据。这包括从分布式应用程序来的聚合统计用来生产集中的运营数据提要。

4、Log Aggregation

kafka的特性决定它非常适合作为”日志收集中心”;application可以将操作日志”批量””异步”的发送到kafka集群中,而不是保存在本地或者DB中;kafka可以批量提交消息/压缩消息等,这对producer端而言,几乎感觉不到性能的开支.此时consumer端可以使hadoop等其他系统化的存储和分析系统

END

推荐好文

强大,10k+点赞的 SpringBoot 后台管理系统竟然出了详细教程!

分享一套基于SpringBoot和Vue的企业级中后台开源项目,代码很规范!
能挣钱的,开源 SpringBoot 商城系统,功能超全,超漂亮!


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182497.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月13日 上午11:16
下一篇 2022年10月13日 上午11:16


相关推荐

  • javascript百炼成仙 第一章 掌握JavaScript基础01 初入宗门

    javascript百炼成仙 第一章 掌握JavaScript基础01 初入宗门乐阳村 处于脚本大陆东部的边缘地带 民风淳朴 村名日出而作 日落而息 这一日清晨 所有村民来到村庄的门口 正在为一个十五六岁的少年送别 只见那少年虽然身体瘦弱 可是目中绽放出异彩 身躯虽不壮实 倒也挺拔 叶小凡 你是我们全村人的骄傲 百年来唯一一个具备修行 JavaScript 甲等资质的孩子 马上会有千鹤派的大人来接你 今后你一定要认真修行 给我们全村的人争光 他叫叶小凡 几天前通过了修行资质的检验 符合修行 JavaScript 的资质 千鹤派 叶小凡眼前一亮 语气中伴随着激动 两眼放光 千鹤派

    2026年3月26日
    1
  • Mac时钟屏保_屏保显示mac地址

    Mac时钟屏保_屏保显示mac地址实用兼美观,Fliqlo称得上是人气最高的屏保之一。翻页日历式的复古界面,结合了电子和机械的美感,下载地址:Fliqlo-TheFlipClockScreensaver

    2026年4月18日
    6
  • 斯密特触发器

    斯密特触发器斯密特触发器又称斯密特与非门 是具有滞后特性的数字传输门 电路具有两个阈值电压 分别称为正向阈值电压和负向阈值电压 与双稳态触发器和单稳态触发器不同 施密特触发器属于 电平触发 型电路 不依赖于边沿陡峭的脉冲 nbsp 它是一种阈值开关电路 具有突变输入 输出特性的门电路 这种电路被设计成阻止输入电压出现微小变化 低于某一阈值 而引起的输出电压的改变 nbsp 当输入电压由低向高增加 到达 V 时 输出电

    2026年3月26日
    2
  • github加速访问

    github加速访问github 加速访问修改域名解析地址修改 hosts 文件 C Windows System32 drivers etc 140 82 113 3github com151 101 76 133raw githubuserco com

    2026年3月17日
    2
  • 双三次插值算法(bicubic interpolation)与图形学和计算方法的关系

    双三次插值算法(bicubic interpolation)与图形学和计算方法的关系双三次插值算法 bicubicinter 与图形学和计算方法的关系为啥要写这个现在正是期末时间 nc 原本在复 yu 习 xi 图形学 看到第四章曲线与曲面的时候 第二节讲到了 heimite 多项式插值问题 诶 这不是计算方法的内容么 嗯 计算方法课件 打开 嗯 本来打算明年看计算方法哒 这样今天把这个第四章也顺便看完吧 然后是目录 嗯 不错不错才 4 课 现在写博客的我表示两

    2026年3月17日
    3
  • Pycharm调试Debug篇(详细)

    Pycharm调试Debug篇(详细)学习顺序 1 先学习本篇内容 基本够用了 2 再看 Alu CycleGAN 3 数据集与模型初始化 哔哩哔哩 bilibili 此视频 里面虽然没有专门介绍如何调试 但我们可以根据她的操作来学习调试的具体流程 pycharm 中的 debug 模式首先 还是用示例说话 我们书写一段简短的代码 来帮我们完成今天要讲的内容 defsum demo x y for inrange 2 x 1y 1result

    2026年3月26日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号