Kafka 2.3.0源码解析之二:源码工程目录结构
源码工程根目录下包含了若干文件夹和文件,如下图所示:Kafka工程目录文件夹和文件kafka是基于Gradle构建的多模块工程,在build.gradle文件中定义了整个工程和各个模块的相关配置。
陪你一起学kafka(十)——消息压缩
背景我们都知道kafka是把消息存储在磁盘上的,那随着消息数量的不断增大,所占用的空间也是不断的增加的,那减少消息的占用空间就是一个优化的方向。kafka也考虑到了这一点,所以就有了消息压缩机制。
Java中使用Kafka
kafka客户端api分为5大类,常用的是前3类AdminClient API:管理topic、broker之类的信息Producer API:发布消息到一个或多个topicConsumer API:订阅1个或多个topic,处理接收到的消息Stream API:流处理,将输入流
如何从 Kafka 看 时间轮 算法设计
冷知识:JDK Timer 和 DelayQueue 底层都是个优先队列,即采用了 minHeap 的数据结构,最快需要执行的任务排在队列第一个,不一样的是 Timer 中有个线程去拉取任务执行,DelayQueue 其实就是个容器,需要配合其他线程工作。
Redis实现一个消息队列_不仅可以传输字符串,还可以传输java对象
有童鞋说,使用kafka,rabbitmq就可以了,但是呢,凡是总有特殊情况啊,比如,部署的时候,由于生产环境的原因,让尽可能少的,使用中间件,但是redis,做为实现缓冲,实现认证等必须可以让安装的.
从源码和日志文件结构中分析 Kafka 重启失败事件
上次的 Kafka 重启失败事件,对为什么重启失败的原因似乎并没有解释清楚,那么我就在这里按照我对 Kafka 的认识,从源码和日志文件结构去尝试寻找原因。从源码中定位到问题的根源首先把导致 Kafka 进程退出的异常栈贴出来:注:以下源码基于 kafka 0.11.0.