Kafka源代码阅读(5):stream

线程模型

kafka stream默认是单线程的。
这里写图片描述
如果启动多线程
这里写图片描述
kafka 的基本调度单位是task。每一个task包含着一个完整子topo。这点和Storm不同。一个线程可以包含多个task。
每一个task拥有自己的state store。用于帮助kafka stream进行有状态的数据处理。state store以topic的方式存储在broker端。

概念

KStream和KTable只能从kafka topic中创造。