zfb050 | 发布于 2017-02-24 15:26:10 | 阅读量 29 |
发布于 2017-02-24 15:26:10 |
参考资料: >官方文档: > 1. [详细说明文档](http://jmockit.org/tutorial.html) > 2. [quick start](http://jmockit.org/gettingStarted.html) > 3. [API doc](http://jmockit.org/api1x/overview-summary.html) ##### 背景 今天再设计跟
继续阅读
zfb050 | 发布于 2017-05-16 17:22:54 | 阅读量 40 | kafka NIO
发布于 2017-05-16 17:22:54 | kafka NIO
>kafka的socket server是基于java NIO,使用`Reactor`模式开发的。socketserver主要用于处理kafka server对外提交网络请求的操作,用于检查连接数,把请求添加到请求的队列中,对KafkaApis提供操作支持. 其线程模型为: - 一个Acceptor线程接受/处理所有的新连接 - N个Processor线程,每个Processor都有自己的s
继续阅读
zfb050 | 发布于 2017-05-16 17:22:54 | 阅读量 59 | kafka server
发布于 2017-05-16 17:22:54 | kafka server

本文主要对kafka Server端Log的构造、offset的管理以及消息写入到LOG中的过程进行描述

继续阅读
zfb050 | 发布于 2017-05-16 17:22:54 | 阅读量 169 | kafka ISR server
发布于 2017-05-16 17:22:54 | kafka ISR server
[TOC] # 疑问 - leader是在何时更新Highwater的? - kafka-manager上出现Lag为负值是什么原因造成的? - Log中的消息被删除时,ISR之间是如何协调的? > 下面所有的讨论都是基于一个包含3个broker的kafka集群而言的 # Replica ## leader vs followers 如果将所有的topic的`replicas`设置为2(_c
继续阅读
zfb050 | 发布于 2017-05-16 17:22:54 | 阅读量 147 | kafka server
发布于 2017-05-16 17:22:54 | kafka server

对kafka Controller的工作原理进行梳理,着重对leader选举、partition状态机以及一些重要的ZK listener进行分析。

继续阅读
zfb050 | 发布于 2017-05-16 17:22:58 | 阅读量 94 | kafka client NIO
发布于 2017-05-16 17:22:58 | kafka client NIO
> 从Kafka 0.8.2开始,发布了一套新的Java版的client api,KafkaProducer/KafkaConsumer,替代之前的scala版的api。 ## REF [Kafka: Producer (0.10.0.0)](http://www.infocool.net/kb/OtherCloud/201611/212499.html) [Kafka源码分析 Produce
继续阅读
zfb050 | 发布于 2017-05-16 17:22:58 | 阅读量 51 | kafka client
发布于 2017-05-16 17:22:58 | kafka client
> 探究`org.apache.kafka.clients`中Metadata的数据结构、更新及获取原理 [ref](http://www.infocool.net/kb/Other/201609/193278.html) **Metadata**是为producer及consumer服务的,在producer和consumer创建的时候都会创metadata: ``` this.metad
继续阅读
zfb050 | 发布于 2017-05-16 17:22:58 | 阅读量 304 | kafka client
发布于 2017-05-16 17:22:58 | kafka client
# REF * [KafkaConsumer API doc](https://kafka.apache.org/0100/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html) * [Kafka 之 Group 状态变化分析及 Rebalance 过程](https://wangzzu.github.io/2017/01/16
继续阅读
zfb050 | 发布于 2017-05-16 17:22:58 | 阅读量 57 | kafka client
发布于 2017-05-16 17:22:58 | kafka client
> 为了方便用户感知发送的情况,kafka producer中提供了`callback`机制,springkafka中实现了`ProducerListener` ### 遇到的问题 近期生产环境上由于版本BUG问题导致一段时间内某台broker出现假死的异常状态,在这异常期间内发送到该broker上的消息都失败了。在各个系统中我们实现了一个ProducerListener用于将发送失败的消息写
继续阅读
zfb050 | 发布于 2017-05-16 17:22:58 | 阅读量 56 | kafka client
发布于 2017-05-16 17:22:58 | kafka client
> [早期整理的spring kafka Listener的实现](http://note.youdao.com/noteshare?id=7c6966ee22cebfb83c8f332ec1bc7714) [TOC] #**两个与分区分配有关的回调函数** springKafka在创建了Consumer后会订阅topic,这时会传入一个`RebalenceListener`,这个listen
继续阅读