文章插图
Offset 的维护
由于 Consumer 在消费过程中可能会出现断电宕机等故障,Consumer 恢复后,需要从故障前的位置继续消费 。
所以 Consumer 需要实时记录自己消费到了哪个 Offset,以便故障恢复后继续消费 。
Kafka 0.9 版本之前,Consumer 默认将 Offset 保存在 Zookeeper 中,从 0.9 版本开始,Consumer 默认将 Offset 保存在 Kafka 一个内置的 Topic 中,该 Topic 为 __consumer_offsets 。
总结
上面和大家一起深入探讨了 Kafka 的架构,比较偏重理论和基础,这是掌握 Kafka 的必要内容,接下来我会以代码和实例的方式,更新 Kafka 有关 API 以及事务、拦截器、监控等高级篇,让大家彻底理解并且会用 Kafka 。
作者:臧远慧
简介:就职于中科星图股份有限公司(北京),研发部后端技术组 。个人擅长 Python/JAVA 开发,了解前端基础;熟练掌握 MySQL,MongoDB,了解 redis;熟悉 linux 开发环境,掌握 Shell 编程,有良好的 Git 源码管理习惯;精通 Nginx ,Flask、Swagger 开发框架;有 Docker+Kubernetes 云服务开发经验 。对人工智能、云原生技术有较大的兴趣 。
【51CTO原创稿件,合作站点转载请注明原文作者和出处为51CTO.com】
【Kafka架构原理,也就这么回事】
推荐阅读
- 什么是以太网交换机?以太网交换机的工作原理详解!
- VLAN技术原理
- Tomcat是如何运行的?整体架构又是怎样的?
- 几秒能产生上千度高温,瞬间将金属烧得通红,感应加热原理是什么
- 抽水马桶是如何工作的?一文看懂虹吸原理
- 线程池原理详解及如何用C语言实现线程池
- 超详细的Socket通信原理和实例讲解
- 我花了10个小时,写出了这篇K8S架构解析
- Nginx高级篇:从原理到实战,彻底搞懂Nginx
- Mybatis原理