视频课程 编程

Kafka模式注册中心与REST代理实战 (英文课程中文字幕)

¥5.00 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

视频数量:51个 总时长:4小时24分 课程介绍: Kafka模式注册中心与REST代理实战 想象一个真实场景:你的Kafka集群已经跑了半年,生产者往Topic里灌数据,消费者从另一头读数据,大家相安无事。直到某天,业务方悄悄改了一个字段名,或者把某个整型字段改成了字符串,消费者毫不知情,照常解码——结果系统直接崩溃,实时计算流水线全线停摆。这种事故在Kafka项目里太常见了,因为Kafka本身只认字节,不管你传的是JSON还是自定义二进制,它一概不查。 这门课要解决的就是数据格式的管理问题。Kafka只负责搬运字节,但实际项目里数据格式必须被严格约束,否则上下游一旦对不上口径,整个系统就会乱。Confluent公司提供的Schema Registry(模式注册中心)就是专门管这件事的工具——它给Kafka加了一层数据契约,让生产者和消费者对数据结构有统一理解,并且支持兼容性演进。课程会带你从零开始,把这套体系彻底搞明白。 一、Avro模式:数据契约的描述语言 课程从Avro讲起。Avro是Apache旗下的数据序列化系统,天生适合流式场景,它用Schema来描述数据长什么样,就像给数据画了一张图纸。课程会先讲Avro的基本数据类型,比如int、long、string、boolean,再讲复杂类型,包括数组、映射、联合类型,最后是记录类型,也就是把多个字段组合成一条完整数据。 有一个知识点值得特别留意——Avro的逻辑类型。比如你想表达日期,底层其实就是整数,但加上"date"这个逻辑类型标记后,所有人一看就知道这是日期而不是普通数字。时间戳同理。课程专门花一节课讲十进制数的处理,金融场景几乎绕不开Decimal,但Avro对Decimal的支持有些细节容易踩坑,老师会把坑点指出来。 二、Avro在Java里的三种用法 理论讲完了,接下来用Java实操。课程演示三种操作Avro的方式:Generic Record(通用记录,灵活但代码冗长)、Specific Record(编译时生成Java类,类型安全更可靠)、以及反射方式(直接操作POJO,几乎不用写额外代码)。每种方式都有动手环节,老师带着一步步敲代码。 但这块真正重要的不是怎么读写,而是模式演进。Schema Evolution是生产环境最容易出问题的地方:数据模式不可能永远不变,加字段、改类型、删字段,哪些操作能兼容、哪些会破坏消费者?课程把演进规则掰开了讲,再用Java代码实际演示一遍兼容性被破坏和被保持的区别。 三、用Docker搭建完整的实验环境 学再多理论,不跑起来等于白学。课程用Docker Compose搭建环境,不管你用的是新版Mac、旧版Mac、Windows 10、Windows旧版,还是Ubuntu,都有对应的演示视频。Docker内存分配的注意事项单独拎出来讲了,常见问题的FAQ也整理好了。环境就绪后,一条命令把Kafka、Schema Registry、REST Proxy全部拉起来。 四、Schema Registry接入Kafka生产消费链路 环境有了,接下来把Schema Registry用进Kafka。课程先讲Schema Registry的架构设计和工作原理,再带你用Kafka自带的Avro控制台工具跑通流程——不写一行代码,先直观感受Avro数据在Kafka里是什么形态。 然后进入Java编码环节:手写Avro生产者把对象序列化发出去,再写对应消费者读回来。接着老师模拟一次模式升级,V2版本的生产者上线后,V1的消费者还能不能正常读?老师用兼容性配置实操给你看,亲眼见证兼容性规则是怎么约束生产者和消费者的。最后还会深入Schema Registry的底层存储机制,讲讲日常运维中怎么高效管理大量模式。 五、REST Proxy:HTTP方式操作Kafka 不是所有场景都适合写Java连Kafka,比如Python脚本、前端对接、临时调试。Kafka REST Proxy正是为此而生,它把Kafka协议封装成HTTP API,发个POST请求就能写数据,发个GET请求就能读。 课程先讲REST Proxy的设计目标,再对比V1和V2 API的差异,然后用Insomnia工具做实际调试。你会学到怎么通过REST API管理Topic,怎么用二进制格式生产和消费,怎么用JSON格式(最直观),最后重点演示怎么用Avro格式通过REST Proxy生产消费数据——这是把前面所有知识点串起来的综合演练。 六、附录与进阶方向 课程末尾有两个附录章节:一个展示从Avro生产者到Kafka Connect再到Kafka Streams的全链路流转,让你看清Avro在完整数据管道里是如何贯穿的;另一个讲REST Proxy的部署安装与横向扩展思路。老师也整理了官方文档的阅读路径,方便课后继续深挖。 适合谁来学?如果你已经在用Kafka但被数据格式管理问题困扰过,如果你想给项目加上Schema Registry但不知道从何下手,如果你不想写Java想通过HTTP跟Kafka打交道,这门课都能给到答案。前提是你了解Kafka基本概念(Topic、Producer、Consumer是什么)和Java基本语法。不需要提前了解Avro,课程从零开始。 学完后你应该能独立设计Avro模式、用Java写出对接Schema Registry的生产者和消费者、用REST Proxy通过HTTP操作Kafka,并且对模式兼容性和演进策略有清晰的判断力。这些是真实Kafka项目里的日常技能,也是面试中经常被考察的知识点。