什么是 Kafka?
Kafka 通常用于实时流数据架构,以提供实时剖析。
Kafka 正在爆炸式增长。超过三分之一的财产 500 强企业都应用 Kafka。这些公司包含十大游览公司,十大银行中的七家,十大保险公司中的八家,十大电信公司中的九家,以及更多。LinkedIn,微软和 Netflix 每天应用 Kafka(1,000,000,000,000)解决万亿级的音讯。Kafka 用于实时数据流,收集大数据或进行实时剖析(或两者兼而有之)。Kafka 与内存微服务一起应用以提供可靠性,它可用于向 CEP(简单事件流零碎)和 IoT / IFTTT 式自动化零碎提供事件。
为什么抉择 Kafka?
Kafka 通常用于实时流式数据体系结构以提供实时剖析。因为 Kafka 是一个疾速,可扩大,耐用和容错的公布、订阅消息传递零碎,Kafka 被用于 JMS,RabbitMQ 和 AMQP 可能因为数量和响应速度而不被思考的状况。Kafka 具备更高的吞吐量,可靠性和复制个性,使其实用于跟踪服务呼叫(跟踪每个呼叫)或跟踪传统 MOM 可能不被思考的物联网传感器数据。
Who 在应用 Kafka?
许多解决大量数据的大公司应用 Kafka。
- LinkedIn 起源于它,用它来跟踪流动数据和经营指标。
- Twitter 应用它作为 Storm 的一部分来提供流解决基础设施。
- Square 应用 Kafka 作为音讯总线,将所有零碎事件转移到各种 Square 数据中心(日志,自定义事件,度量规范等),输入到 Splunk,Graphite(仪表板)以及 Esper-like / CEP 警报系统。
- Spotify,Uber,Tumbler,Goldman Sachs,PayPal,Box,Cisco,CloudFlare 和 Netflix 等公司也应用这种办法。
因为整个笔记比拟全面,内容相当的多,这里仅展现材料的一些截图,如有须要获取文中提到的“Kafka 技术手册”的敌人 戳此处支付。
kafka 常识导图
第一局部:初识 Kafka
通过这一部分的学习,你能够学习一下内容:
- 晓得 Kafka 基本原理,理解要害术语概念
- 能够应用 Kafka 进行音讯零碎开发
- 通过 Java 语言来应用 Kafka 进行音讯收发
内容涵盖:( 个性 + 应用场景 + 技术劣势 + 适应人群 + 概念详解 + 装置与配置 + Java 第一个程序 + 服务端罕用参数配置 + 总结 )
第二局部:生产者详解
通过这一部分的学习,你能够学习一下内容:
- 深刻学习 Kafka 数据生产大抵流程
- 如何创立并应用 Kafka 生产者
- Kafka 生产者罕用配置
内容涵盖:( 音讯发送 + 发送原理分析 + 其余生产者参数 + 总结 )
第三局部:消费者详解
通过这一部分的学习,你能够学习一下内容:
- 深刻学习 Kafka 数据生产大抵流程
- 如何创立并应用 Kafka 消费者
- Kafka 消费者罕用配置
内容涵盖:( 概念入门 + 音讯接管 + 总结 )
第四局部:主题
通过这一部分的学习,你能够学习一下内容:
- 深刻学习 Kafka 主题的治理
- KafkaAdminClient 利用
内容涵盖:( 治理 + 减少分区 + 分区正本的调配 + 其余主题参数配置 + KafkaAdminClient 利用 + 总结 )
第五局部:分区
通过这一部分的学习,你能够学习一下内容:
- 深刻学习 Kafka 分区的治理
- 包含:优先正本的选举、分区重新分配等
内容涵盖:( 正本机制 + 分区 Leader 选举 + 分区重新分配 + 批改正本因子 + 分区调配策略 + 总结 )
第六局部:Kafka 存储
通过这一部分的学习,你能够学习一下内容:
- 在实现 Kafka 利用开发的根底上,晓得文件存储机制
- Kafka 为什么应用磁盘作为存储介质
- 剖析文件存储格局
- 疾速检索音讯
内容涵盖:( 存储构造概述 + 日志索引 + 日志清理 + 磁盘存储劣势 + 总结 )
第七局部:稳定性
通过这一部分的学习,你能够学习一下内容:
- 深刻学习 Kafka 在保障高性能、高吞吐的同时通过各种机制来保障高可用性
内容涵盖:( 幂等性 + 事务 + 控制器 + 可靠性保障 + 一致性保障 + 音讯反复的场景及解决方案 + __consumer_offsets + 总结 )
第八局部:高级利用
通过这一部分的学习,你能够学习一下内容:
- 作为运维人员把握命令行工具
- 应用 Connect 进行流信息处理
- 把握提早音讯、流式解决等
- Kafka 和 SpringBoot 整合
内容涵盖:( 命令行工具 + 数据管道 Connect + 流式解决 Spark + SpringBoot Kafka + 消息中间件选型比照 + 总结 )
第九局部:集群治理
通过这一部分的学习,你能够学习一下内容:
- 相熟 Kafka 集群治理相干内容
- 配置与调优
内容涵盖:( 集群的特点 + 集群的能力 + 集群应用场景 + 集群搭建 + 多集群同步 + 总结 )
第十局部:监控
通过这一部分的学习,你能够学习一下内容:
- 晓得 Kafka 的监控体系
- 把握 JMX 监控指标
- 数据异动实时揭示
内容涵盖:( 监控度量指标 + broker 监控指标 + 主题分区监控 + 生产者监控指标 + 消费者监控指标 + Kafka Eagle + 总结 )
写在最初
在以后的趋势下,Kafka 被越来越多的互联网独角兽企业所器重,在业务中的应用也越来越多!那么,咱们就是说不肯定要纯熟,然而至多要学会怎么用。这样在业务中本人的能力一直地晋升,才有底气和老板、和 HR 谈涨薪。否则,只是一味地做,不停地 996,业务能力却没有晋升,那么就会被公司所摈弃,更不要说什么涨薪了, 你问问你本人,你配吗?
最初,我想说的是,学习并非难事,而贵在保持,尤其是在咱们参加工作之后,要持续保持学习就更不容易了。但对于程序员来说,学习是立业之基本,如若放弃学习,被市场淘汰是迟早的事件。所以,学习更多新的常识对于本人来说才是一种更大的投资。
获取形式:须要这份《Kafka 技术手册》帮忙点赞 + 转发 + 关注我,而后戳此处收费获取! 心愿对你有帮忙~~