kafka_topic是什么

创作不容易,关注,喜欢,分享,转发,评论,收集,掌握互联网的前沿知识,支持,谢谢。

kafka_topic是什么

Kafka性能及应用场景介绍

kafka_topic是什么

数据中非常流行的技术Kafka,Kafka 它是一个分布式新闻系统,其高性能在圈内非常有名。kafka可支持基于磁盘的多生产者、多消费者、数据存储、可伸缩、高性能、易于处理大量新闻流。

Kafka还有多应用场景,如开发新闻系统、网站活动数据跟踪、日志聚合、流程处理等。

什么是kafka

Kafka 底层的 IO 用的是 NIO,Kafka最初由Linkedin基于分布式、分区、多副本、多订阅者的公司开发zookeeper协调分布式日志系统。

Kafka主要特性

1)高吞吐量、低延迟:kafka每秒可处理大量数据,数据延迟为毫秒级,具有独特的高可用性;

2)可扩展性:kafka集群支持横向扩展,支持高可用性应用场景;

3)持久性和可靠性:消息持续到本地磁盘,避免数据丢失,具有可恢复性;

4)容错性:允许集群中的节点失败;

5)高并发:单机可支持数千个客户同时读写,具有高可用应用场景;

Kafka架构分析

kafka_topic是什么

kafka_topic是什么

  • Topic

发送消息kafak有一个类别,常说Topic,其实就是按新闻topic来分类,topic是逻辑分类,一个Topic一个或多个都可以Partition。

  • partition

分区,每个topic物理分为一个或多个分区,每个分区在物理上对应一个文件夹,Topic数据可分为一个或多个Partition,Partition底层逻辑是log文件。

  • Leader

每个主题都有几个Partition每个分区都有一个副本leader和多个follower,leader负责所有的读写操作。

  • producer

生产者、生产者向指定指定发送消息topic下。

  • consumer

消费者,消费者从topic消费数据按顺序执行。

  • consumer group

每一个消费者组consumer属于一个特定的消费者群体,可以为每个人提供consumer指定消费者群体不指定的,属于默认group。

kafka_topic是什么

  • follower

follower不提供外部服务,只提供外部服务leader保持数据同步。

  • rebalance

Rebalance表示"重平衡",是 Kafka 实现高可用性的重要手段。

Kafka中zookeeper的作用

Kafka使用时通常需要配合Zookeeper,分区中的leader和follower不同分布均匀Kafka每台服务器Kafka服务器也有分区leader和follower。

kafka_topic是什么

kafka应用场景分析

1.日志收集:可用Kafka收集各种服务log。

kafka_topic是什么

2.消息系统:生产者和消费者,缓存消息等。

kafka_topic是什么

3.跟踪用户活动:kafka常用于记录web用户或者app浏览网页、搜索、点击等各种活动,然后消费者通过消息订阅、实时监控分析。

实时计算大数据:kafka如与spark、storm等整合。

Kafka性能好在哪里,主要特点是什么?

kafka硬盘存储不是基于内存,所以新闻积累能力更强

1.顺序写作:使用磁盘的顺序访问速度,读写可以接近内存,kafka的消息都是append操作。

究其原因,partition有序,通过批量操作,可以节省磁盘的搜索时间,节省写入次数,partition物理上分为多个segment存储,方便删除。

如下图

kafka_topic是什么

传统:

  • 核心缓冲区数据copy到用户缓冲区
  • 用户缓冲区的数据copy到socket发送缓冲区
  • 将socket数据发送到缓冲区网卡、进行传输

2、零拷贝

零拷贝是指Kafka利用 linux 操作系统的 "zero-copy" 在消费端优化机制。内核使用操作系统的指令支持,将缓冲区的数据发送到网卡传输。

原因如下:

1) kafka不太依赖jvm,操作系统的pageCache,如果生产消费速度可以,直接使用pageCache交换数据不需要通过磁盘IO进行处理。

2) Page Cache

为优化读写性能,Kafka使用操作系统本身Page Cache,使用操作系统本身的内存而不是操作系统本身的内存JVM空间内存。

3) 分区分段

Kafka的message是按topic分类存储,topic中间的数据是一个的partition也就是说,不同的分区存储broker节点。

好了,这篇文章的内容就和大家分享到这里,如果大家对网络推广引流和网络创业项目感兴趣,可以添加微信:beng3355  备注:项目

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 sumchina520@foxmail.com 举报,一经查实,本站将立刻删除。
如若转载,请注明出处:https://www.hzy3.com/7847.html