美文网首页
【Kafka源码】Kafka代码模块

【Kafka源码】Kafka代码模块

作者: 端木轩 | 来源:发表于2017-10-23 11:17 被阅读89次

Kafka源码依赖于Scala环境,首先需要安装scala,这块请自行百度进行安装。

传送门

当然,我们要分析源码,需要下载源码,请自行从github上面下载。

说明:本文使用的kafka版本为0.10.0.1,这是目前公司使用的版本。

下面说明下kafka源码的工程结构:


image

下面主要对core目录模块进行说明,这块是kafka的核心。

  • admin:管理员模块,操作和管理topic,paritions相关,包含create,delete topic,扩展patitions
  • api:这块主要负责数据的组装,客户端和服务端数据交互的组装
  • client:这个模块比较简单,只有一个类,主要是获取一些元数据,包括topic、broker等
  • cluster:该模块定义了几个在kafka中比较重要的类:Broker,BrokerEndPoint,Cluster,EndPoint,Partition,Replica等,后续我们会对他们之间的关系进行分析
  • common:通用类,定义了一些异常类等等
  • consumer:comsumer处理模块,负责与消费者相关的操作
  • controller:负责中央控制器选举,partition的leader选举,副本分配,副本重新分配,partition和replica扩容
  • coordinator:协调器,rebalance的一些协调器,比如延迟心跳等
  • javaapi:kafka提供出来的java生产消费的api
  • log:文件存储模块,负责读写所有kafka的topic消息数据,也就是消息持久化模块
  • message:封装多个消息组成一个“消息集”或压缩消息集
  • metrics:内部状态监控模块
  • network:kafka的网络处理模块,负责接受和处理客户端连接
  • producer:生产者模块,包括同步和异步发送消息
  • security.auth:安全认证模块
  • serializer:序列化和反序列化工具
  • server:kafka服务启动相关内容
  • tools:工具模块,内容挺多,主要是与kafka相关的工具
  • utils:通用工具模块,包括zk等等
  • Kafka:程序入口

相关文章

  • 【Kafka源码】Kafka代码模块

    Kafka源码依赖于Scala环境,首先需要安装scala,这块请自行百度进行安装。 传送门 当然,我们要分析源码...

  • Kafka源码分析-Content Table

    Kafka源码分析-网络层-1 Kafka源码分析-网络层-2 Kafka源码分析-网络层-3 Kafka源码分析...

  • KafkaProducer

    Kafka源码阅读(一):Kafka Producer整体架构概述及源码分析 zqhxuyuan Kafka源码分...

  • Kafka 知识结构

    最近需要了解 Kafka 源码, 通过翻看 Kafka 源码, 发现该项目的模块化做的非常好. 简单来说可以分成如...

  • 日志段:保存消息文件的对象是怎么实现的?

    日志段及其相关代码是kafka服务器源码中最为重要的组件代码之一。kafka日志结构概览kafka日志在磁盘上的组...

  • 消息队列之一: kafka

    原则: kafka版本!kafka broker及spring-boot配置看官网,看kafka源码, 源码, 源...

  • Kafka源码阅读准备

    目标是希望能通过idea工具阅读Kafka源码并能成功的编译Kafka源码。 源码下载 Kafka的源码地址在 h...

  • 在服务器上部署kafka-python包

    1、需求: 需要使用Python编写kafka组件的测试代码 2、问题:目前需要kafka-python的模块,在...

  • Kafka源码剖析

    Kafka源码剖析 Kafka源码剖析之源码阅读环境搭建 首先下载源码:http://archive.apache...

  • zkkafka

    kafka安装单机版 下载kafka源码包,http://kafka.apache.org/downloads解压...

网友评论

      本文标题:【Kafka源码】Kafka代码模块

      本文链接:https://www.haomeiwen.com/subject/fjgouxtx.html