https://sites.google.com/a/mammatustech.com/mammatusmain/kafka-architecture/4-kafka-detailed-architecture.pdf?attredirects=2&d=1

https://news.ycombinator.com/item?id=7386652

https://www.quora.com/Why-does-Kafka-scale-better-than-other-messaging-systems-like-RabbitMQ

https://stackoverflow.com/questions/48665257/why-kafka-index-files-use-memory-mapped-files-but-log-files-dont

kafka 設計文檔,设计哲学。。。。

https://cwiki.apache.org/confluence/display/KAFKA/Kafka+Improvement+Proposals

https://cwiki.apache.org/confluence/display/KAFKA/Index

https://cwiki.apache.org/confluence/display/KAFKA/KIP-101+-+Alter+Replication+Protocol+to+use+Leader+Epoch+rather+than+High+Watermark+for+Truncation

https://cwiki.apache.org/confluence/display/KAFKA/Writing+a+Driver+for+Kafka

Exactly Once Delivery and Transactional Messaging

design details

https://docs.google.com/document/d/11Jqy_GjUGtdXJK94XGsEIK7CP1SnQGdp2eF0wSw9ra8/

https://thehoard.blog/how-kafkas-storage-internals-work-3a29b02e026

https://thehoard.blog/building-a-kafka-that-doesnt-depend-on-zookeeper-2c4701b6e961

https://cwiki.apache.org/confluence/display/KAFKA/KIP-98+-+Exactly+Once+Delivery+and+Transactional+Messaging

https://cwiki.apache.org/confluence/display/KAFKA/Transactional+Messaging+in+Kafka

https://cwiki.apache.org/confluence/display/KAFKA/Idempotent+Producer

KAFKA protocol

http://kafka.apache.org/protocol.html

https://cwiki.apache.org/confluence/display/KAFKA/A+Guide+To+The+Kafka+Protocol#AGuideToTheKafkaProtocol-ProduceRequest

ProduceRecord协议的实现----- important!!!!!!!!!!

http://blog.csdn.net/chunlongyu/article/details/52651960

Kafka源码深度解析-序列5 -Producer -RecordAccumulator队列分析

http://blog.csdn.net/chunlongyu/article/details/52704213

Kafka源码深度解析-序列15 -Log文件结构与flush刷盘机制

http://blog.csdn.net/chunlongyu/article/details/53784033

Kafka源码深度解析-序列14 -Server核心组件之3-SocketServer与NIO- 1+N+M 模型

http://blog.csdn.net/chunlongyu/article/details/53036414

http://blog.csdn.net/aabv54321/article/details/54892641

Kafka源码深度解析-序列8 -Consumer -Fetcher实现原理与offset确认机制

http://blog.csdn.net/chunlongyu/article/details/52796639

Kafka源码深度解析-序列2 -Producer -Metadata的数据结构与读取、更新策略

http://blog.csdn.net/chunlongyu/article/details/52622422

Kafka源码深度解析-序列3 -Producer -Java NIO

http://blog.csdn.net/chunlongyu/article/details/52636762

KAFKA源码分析

https://www.jianshu.com/p/aa274f8fe00f

https://www.jianshu.com/p/22d4a733ec5d

Kafka#4:存储设计

http://blog.csdn.net/kisimple/article/details/42747197

为了加速index文件的读写, 采用了文件内存映射的方式

https://www.jianshu.com/p/e20449a396b1

Zero-Copy tech

https://www.ibm.com/developerworks/library/j-zerocopy/index.html

Zero Copy I: User-Mode Perspective

http://www.linuxjournal.com/article/6345

Kafka Zero-Copy 使用分析

https://www.jianshu.com/p/d47de3d6d8ac

Kafka#3:分布式设计

http://blog.csdn.net/kisimple/article/details/42747097

apache kafka系列之源码分析走读-server端网络架构分析

http://blog.csdn.net/lizhitao/article/details/38442733

apache kafka系列之源码分析走读-SocketServer分析

http://blog.csdn.net/lizhitao/article/details/44698323

http://blog.csdn.net/wl044090432/article/details/50987168

apache kafka系列之源码分析走读-kafkaApi详解

http://blog.csdn.net/lizhitao/article/details/43987319

http://blog.csdn.net/u014393917/article/details/52042920

kafka源码解析之十二KafkaController(上篇)

http://blog.csdn.net/wl044090432/article/details/51118966

kafka源码解析之十一KafkaApis

http://blog.csdn.net/wl044090432/article/details/51068413

Kafka源码深度解析-序列14 -Server核心组件之3-SocketServer与NIO- 1+N+M 模型

http://blog.csdn.net/chunlongyu/article/details/53036414

Kafka源码深度解析-序列4 -Producer -network层核心原理

http://blog.csdn.net/chunlongyu/article/details/52651960

Kafka源码深度解析-序列3 -Producer -Java NIO

http://blog.csdn.net/chunlongyu/article/details/52636762

Kafka#4:存储设计 分布式设计 源码分析的更多相关文章

  1. RedissonLock分布式锁源码分析

    最近碰到的一个问题,Java代码中写了一个定时器,分布式部署的时候,多台同时执行的话就会出现重复的数据,为了避免这种情况,之前是通过在配置文件里写上可以执行这段代码的IP,代码中判断如果跟这个IP相等 ...

  2. Kafka服务端之网络连接源码分析

    #### 简介 上次我们通过分析KafkaProducer的源码了解了生产端的主要流程,今天学习下服务端的网络层主要做了什么,先看下 KafkaServer的整体架构图 ![file](https:/ ...

  3. PHP与Memcached服务器交互的分布式实现源码分析

    转自: http://blog.csdn.net/hguisu/article/details/7353595 前段时间,因为一个项目的关系,研究了php通过调用memcache和memcached ...

  4. scrapy分布式Spider源码分析及实现过程

    分布式框架scrapy_redis实现了一套完整的组件,其中也实现了spider,RedisSpider是在继承原scrapy的Spider的基础上略有改动,初始URL不在从start_urls列表中 ...

  5. Spring Cloud Eureka源码分析之三级缓存的设计原理及源码分析

    Eureka Server 为了提供响应效率,提供了两层的缓存结构,将 Eureka Client 所需要的注册信息,直接存储在缓存结构中,实现原理如下图所示. 第一层缓存:readOnlyCache ...

  6. CopyOnWriteArrayList设计思路与源码分析

    CopyOnWriteArrayList实现了List接口,RandomAccess,Cloneable,Serializable接口. CopyOnWriteArrayList特性 1.线程安全,在 ...

  7. netty源码分析 - Recycler 对象池的设计

    目录 一.为什么需要对象池 二.使用姿势 2.1 同线程创建回收对象 2.2 异线程创建回收对象 三.数据结构 3.1 物理数据结构图 3.2 逻辑数据结构图(重要) 四.源码分析 4.2.同线程获取 ...

  8. Android源码分析(五)-----如何从架构师的角度去设计Framework框架

    一 : 架构与程序 软件架构是一种思维方式,而程序只是实现思维方式的一种手段,代码固然重要,但是若没有整体的思维架构,一切程序都如水中浮萍. 二 : 框架如何设计 暂时抛开Android Framew ...

  9. 源码分析 RocketMQ DLedger(多副本) 之日志复制(传播)

    目录 1.DLedgerEntryPusher 1.1 核心类图 1.2 构造方法 1.3 startup 2.EntryDispatcher 详解 2.1 核心类图 2.2 Push 请求类型 2. ...

  10. Android源码分析(六)-----蓝牙Bluetooth源码目录分析

    一 :Bluetooth 的设置应用 packages\apps\Settings\src\com\android\settings\bluetooth* 蓝牙设置应用及设置参数,蓝牙状态,蓝牙设备等 ...

随机推荐

  1. Java设计模式从精通到入门五 抽象工厂方法模式

    定义 抽象工厂类为创建一组相关和相互依赖的对象提供一组接口,而无需指定一个具体的类. ​ 这里我得把工厂方法模式得定义拿出来做一下比较:定义一个创建对象的接口,由子类决定实例化哪一个类.工厂方法是一个 ...

  2. Redis自学笔记:1.简介

    博主教材:李子骅.人民邮电出版社.<redis入门指南> 博主操作系统系统:虚拟机Ubuntu16.04 博主redis版本:3.0.6 第1章:简介 redis是一个开源的.高性能的.基 ...

  3. mybatis自动生成mapper和pojo

    1.在resources下新建generatorConfig.xml <?xml version="1.0" encoding="UTF-8"?> ...

  4. Kotlin基础(二)函数的定义与调用

    函数的定义与调用 一.预备知识:在Kotlin中创建集合 fun main(args: Array<String>) { //Kotlin中定义各自集合 val ,,,) val list ...

  5. vs code配置c/c++调试环境+mingw+win10

    参考博客:https://blog.csdn.net/bat67/article/details/76095813 下载VScode和mingw和环境变量的配置 请参考上述的博客 附上我的task.j ...

  6. My Web Developer Roadmap

    必需技能部分,可以理解为通用的.基础的技能,不管我们选择哪个方向都是通用的,包括但不限于 Git 使用.HTTP/HTTPS.数据结构和算法等.当然了,学习能力是必须具备的. 从一开始学习web前端, ...

  7. .ftl文件介绍

    freemarker的文件一般以后缀ftl,ftl文件的头上要写<#assign ww=JspTaglibs["/WEB-INF/webwork.tld"] /这样才能在ft ...

  8. git从其他分支提取文件merge到当前分支

    git checkout A -- [a.go b.go]将A分支中的a.go, b.go两文件合并到当前分支注意:会将当前分支的对应文件强行覆盖

  9. 流畅的Python读书笔记(二)

    2.1 可变序列与不可变序列 可变序列 list. bytearray. array.array. collections.deque 和 memoryview. 不可变序列 tuple. str 和 ...

  10. Ubuntu环境中的Android源代码下载

    跟随“老罗的Android之旅”学习Android系统,首先得学会创建能用于编译Android源代码的环境. 文章参考:http://0xcc0xcd.com/p/books/978-7-121-18 ...