- 博客(6)
- 收藏
- 关注
原创 Kafka 的控制面—Kafka Controller
Kafka Controller作为Kafka集群的大脑,承担着Topic创建、分区重分配、分区Leader选举、负载均衡等重要职责;同时其还在Zookeeper的协助下维护着集群的元数据,为生产者和消费者提供最新的Topic和Partition拓扑信息;本文将详细描述KafkaController内部的实现原理,读者理解了KafkaController模块,也就理解了整个Kafka集群内部的管理机制。
2025-12-15 00:38:40
577
原创 Kafka pk RocketMQ
kafka的producer是使用batch+pipline来发送消息的,batch操作是常用的io优化手段,通过把一批小io合成一个大io,降低io的阻塞次数,从而提高系统吞吐量。Pipline又称流水线复制,在传统的ping pong模式中,需要接收到上一个请求的响应后才发送下一个请求。而Pipline通常会设置一个InFlights缓冲区,用于存储未接收到响应的在途请求,即允许连续发送多少个请求而无需收到响应。
2025-12-14 15:49:49
694
原创 Raft算法在工程实现中的性能优化
本文讲述了Raft算法在工程实现中的多种优化机制,包括通过预投票避免不必要的Leader选举、采用Batch+Pipline提升系统吞吐量、运用ReadIndex和Lease Read实现线性一致性读以及联合一致和单节点变更处理集群成员配置变更。同时也指出了联合一致和单节点变更在论文描述流程中存在的bug及对应的解决方案。
2025-12-14 14:48:05
989
原创 Multi-Raft-Group——高扩展性、强一致的分布式共识算法
Multi-Raft-Group算法,它是为解决Raft算法无法横向扩展问题而提出,包括range分片、分裂合并、Leader调度等内容,本文还阐述了其在ByteKV等分布式KV存储中的工程应用,如事务功能、自动合并等。同时提出思考,Multi-Raft-Group扩展性和性能受限于控制面的单一Raft Group,可采用全异步编程、批量缓存等Raft工程优化手段提升性能。
2025-07-29 14:23:07
918
原创 存储后端的三驾马车:RocksDB、文件系统、磁盘
在分布式存储中,存储后端通常指在单机上提供存储服务的模块。笔者把RocksDB、文件系统、磁盘这三个密切相关的内容比喻为“存储后端的三驾马车”,相信学好了这三驾马车,将来我们研究各种分布式应用时都会受益颇深!
2025-04-07 00:11:41
866
原创 Netty的那些奇技淫巧
在Java的世界里,Netty有着“网络通讯里的Spring”的美称,可见其在网络通讯里的认可度和使用频率。Netty优秀的网络I/O模型实现、优雅的流水线处理机制、精益求精的数据结构、精密的内存分配模型,都值得一位优秀的程序员去学习。
2025-03-02 18:58:51
1021
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅