Spring IOC容器启动之初始化上下文
前言本文采用AnnotationConfigApplicationContext作为上下文,如果是web容器大部分源码可用于参考,但不能保证一致。 Spring IOC容器的源码很多,分解为多篇文章来 ...
Read more
kafka消息格式与日志存储原理分析
kafka自0.11.0.0版本之后消息体升级到了V2版本,本文从生产者消息发送,broker消息存储,消息读取等几个部分作为切入点,来分析kafka的消息流转 写入producer通过PRODUCE ...
Read more
kafka本地启动后不打印日志问题
2020年的春节新冠状病毒肆虐,只能宅在家里(天赋异禀),闲来无事再次打开kafka项目阅读源码,但是从一开始就有个小问题困扰着我,kafka本地启动后不打印日志,虽然能运行,但是心里总是很难受,今 ...
Read more
kafka-server端源码分析之拉取消息
发送fetch请求的对象有2类:client和follower,client拉取时有高水位线的限制,follower则没有,本文仅介绍client,follower拉取时涉及到副本同步,以后单独分析 ...
Read more
kafka server端源码分析之接收消息
承接上篇搭建kafka源码环境之后,本文正式开始分析 前文在前文kafka网络请求处理模型中提到, KafkaServer#startup方法涵盖了kafka server所有模块的初始化Kafk ...
Read more
kafka网络请求处理模型
众所周知,kafka是一款高性能,可伸缩的消息队列中间件,在一个庞大的kafka集群中,每秒能处理几十万条消息,那么必然存在着大量的网络请求,kafka是如何构建自己的网络请求模型的呢,答案就是Rea ...
Read more
ByteBuffer浅显易懂的图解原理
本文希望通过图解的形式帮助更多新手理解ByteBuffer的使用 ByteBuffer的作用我们知道在java中读写文件都是通过流操作的,那么想象一下要读取一个大文件,每次都从流中一个字节一个字节的读 ...
Read more
快速学习scala语言及常用语法汇总
阅读kafka源码的一大障碍就是scala语言,本文的目的是罗列kakfa源码中涉及到的基础源码知识,一些不常用的东西不会涉及,同时我也会不断总结遇到的语法特性,因为极个别语法俺也不会! 环境和j ...
Read more
《快手万亿级别Kafka集群应用实践与技术演进之路》观后心得
本文用于记录观看快手万亿级别Kafka集群应用实践与技术演进之路演讲后的心得,从中确实学到了很多,快手作为kafka的重度使用者,对kafka集群从不同角度优化,其中发现问题,解决问题的思路都值得学 ...
Read more
kafka源码环境搭建
源码下载从kafka官网下载源码压缩包,以2.0.1版本为例,选择-src结尾的压缩包 依赖环境kafka采用gradle构建,根据kafka的git提交记录,采用4.10.3版本构建,如果本地有别 ...
Read more