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. linux 学习笔记 rpm命令

    软件包管理 用rpm命令来管理rpm 软件包 1>遵循GPL 规则 2>安装 foo-2.0-1.i386.rpm软件包 #rpm -ivh foo-1.0-1.i386.rpm 3> ...

  2. C# 使用PrintDocument 绘制表格 完成 打印预览

    C# 使用PrintDocument 绘制表格 完成 打印预览 DataTable   经过不断的Google与baidu,最终整理出来的打印类 主要是根据两个参考的类组合而成,稍微修改了一下,参考代 ...

  3. BZOJ.1566.[NOI2009]管道取珠(DP 思路)

    BZOJ 洛谷 考虑\(a_i^2\)有什么意义:两个人分别操作原序列,使得得到的输出序列都为\(i\)的方案数.\(\sum a_i^2\)就是两人得到的输出序列相同的方案数. \(f[i][j][ ...

  4. RabbitMQ主题模式

    Send类 package topics; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; imp ...

  5. Shell脚本笔记(三)shell中的数学计算

    shell中的数学计算 一.使用方括号 #!/bin/bash a= b= c= res=$[$a * ($c-$b)] echo $res 二.使用(()) +)) ((i=+)) b=$((-*) ...

  6. Scrapy基础(十一)————导出数据到json文件中

    之前介绍过将数据写入mysql数据库中,但是对于那些没有数据库的,可以通过写入json文件中或者是写入到csv或者xls:这里只介绍写入json文件中,也为再练习一下自定义的pipeline 思路: ...

  7. [PA2014]Bazarek

    [PA2014]Bazarek 题目大意: 有\(n(n\le10^6)\)件商品,\(m(m\le10^6)\)次询问.每次询问若选出其中的\(k\)个,要求它们的总价为奇数,求最大可能的总价. 思 ...

  8. (转)JavaWeb学习之Servlet(一)----MyEclipse及Tomcat的配置

    [声明] 欢迎转载,但请保留文章原始出处→_→ 文章来源:http://www.cnblogs.com/smyhvae/p/4134921.html [开发环境] 物理机版本:Win 7旗舰版(64位 ...

  9. ironic驱动-IMPITool

    概述 IMPITool驱动是通过ipmitool工具来管理部署节点的,目前主要有两个驱动: agent_ipmitool pxe_ipmitool 配置驱动 要修改ironic支持的驱动需要修改配置文 ...

  10. 小甲鱼Python第三讲课后习题

    0.以下哪个变量的命名不正确?为什么? A:MM_520 B:_MM520_ C:520_MM D:_520MM 变量 命名:以字母.下划线.数字组成,以字母.下划线开头 1.除了使用反斜杠(\)进行 ...