Java Spring 和 Apache Kafka 训练营 – 从基础到完成
微服务中的 Spring + Apache Kafka、Kafka Stream、Kafka REST 代理、使用 JSON 和 Avro 的 Kafka Schema 注册表、KsqlDB
讲师:Timotius Pamungkas
口袋资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将学到什么
- 搭建基本的Kafka开发环境
- 学习和实施 Apache Kafka 概念:主题、分区、发布/消费
- Kafka Stream:实时数据转换
- Kafka 中的基本错误处理
- 学习并实现 Java 程序,以使用 Apache Kafka 处理多个系统之间的异步数据集成
- Kafka 如何适应微服务架构
要求
- 了解基本算法和编程语言
- 基本的 Java 编程语言(尤其是 Spring)会有所帮助
描述
新更新2:
通过一门课程了解有关 Kafka 的所有内容:
- 重写所有讲座以获得更好的音频质量
- 将 Spring 版本更新至 2.6.x
- 将Kafka版本更新至3.x
- Spring Kafka 上已弃用语法的更新替代方案
- 了解卡夫卡连接。它如何融入系统架构,以及如何使用 Kafka Connect 轻松地从/向 kafka 提取数据。通过实际示例动手实践
- 了解 KsqlDB。Howit 可以帮助加快 kafka 的使用速度,即使对于不懂 Java 编程语言的团队也是如此
- 整个部分相互融合。了解如何集成 Kafka Connect + Kafka Schema Registry + Kafka Stream + KsqlDB
新更新:
- 了解如何将 avro 与 spring kafka 结合使用,如何使用 confluence schema 注册表管理 avro schema
- 使用 kafka REST Proxy 无需编码即可编写生产者和消费者
- 了解 Kafka 如何适应微服务架构。
- 如何将 Kafka 与 REST API 和数据库事务一起使用
- 卡夫卡流:
- Apache Kafka 中的实时数据转换
- 加入流
- 连接表
- 加入流表
- 全局表
- 恰好一次语义
————————————————– ————————————————–
消息系统
如今,我们使用多个系统和在它们之间运行的数据。一个系统触发另一个系统进程,或者数据需要在系统之间传输是很常见的事情。无论您的系统是基于单体还是微服务构建,无论您使用什么数据库,您都需要将这些数据从一个点移动到另一个点。并且您需要立即处理这些动作“FAST”(否则您的生活将被毁)。
这种需求非常普遍,幸运的是,今天的技术已经解决了这个问题。向消息传递系统问好,您可以在其中以几乎实时的间隔轻松地将消息从一个系统异步发送到另一个系统。市场上有一些流行的消息系统,在本课程中我们将讨论最流行的系统之一:Apache Kafka。
阿帕奇·卡夫卡
Apache Kafka 就像中央枢纽,您将来自源系统的所有数据放置在其中,其他相应的系统获取数据并进行处理。Apache Kafka 开源、可靠并且能够在集群上工作。它的入门学习曲线很小,但功能强大,足以进行系统集成。
本课程包括您需要了解的有关基本 Apache Kafka 以及使用 Java(Spring 框架)实现的所有内容。完成本课程后,您应该能够通过 Java 程序安装、配置和使用 Apache Kafka。在本课程中,我们将详细逐步介绍从概念到实践 Java 编码的过程。通过这种方式,您将了解背后的逻辑并体验如何使用 Apache Kafka 和 Java 源代码完成工作。
Java 和 Spring Boot
Java 本身多年来一直是一种流行的语言。Java 被多项编程语言指数认定为世界上使用最广泛的编程语言。由于Java的流行和悠久的历史,它有很多开源项目或框架来帮助开发人员更高效地工作。
Spring 框架是流行的 Java 框架之一。多年来,Spring 框架在 Java 社区中得到了长足的发展。Java 应用程序所需的几乎所有软件组件都可以在 Spring 框架中使用。然而,配置 Spring 需要付出一些努力。这涉及到设置库依赖项,然后使用 XML 或 Java 代码中的注释来配置所需的 Java Spring bean。Spring 开发人员很快意识到可以将大部分工作自动化。
于是在2014年,Spring Boot 1.0面向Java社区发布。Spring Boot 为 Java 程序员提供了许多自动帮助器,并导致 Java 开发人员快速大规模采用该项目。
Spring 为 Kafka 提供了良好的支持,并提供了可在本机 Kafka Java 客户端上使用的抽象层。借助 Spring,开发与 Apache Kafka 交互的应用程序变得更加容易。
你会得到什么
完成课程后,您将学到:
- 安装Apache Kafka和Java,用于开发环境
- Apache Kafka 关键概念
- 使用 Java (Spring Boot) 创建发布者和消费者
- 如果在处理 Apache Kafka 消息期间出现故障,则基本错误处理程序
- 基本了解 Kafka 如何适应微服务架构
本课程不仅会向您解释 Apache Kafka 的理论,还会向您介绍大量动手编码,让您动手实践,动动脑筋。无论您是业余爱好者、初学者还是经验丰富的开发人员,本课程一定会为您带来附加值!
微服务之路
消息代理是微服务架构的重要支柱之一。在微服务中,我们使用异步消息传递来进行服务间通信。服务通过 Apache Kafka 等消息通道交换消息进行通信。
在本课程中,您将学习使用 Apache Kafka 进行消息传递的理论和手动代码,这是微服务架构的通信支柱。
稍后,您可以进一步了解 Kafka 的微服务架构和模式,因为它是重要的组件。
重要的!
本课程使用 Spring Boot 2.x 版本。
2022年11月下旬,Spring Boot 3.0.0发布。将课程更新到 Spring boot 3.0.0 需要时间,但我会尽力而为。
与此同时,您有多种选择:
- 适用于最新版本的 Spring boot 2.x,并且课程应该完全兼容
- 适用于 Spring boot 3.x。大多数课程应该有效,但某些部分可能需要调整。
本课程适合谁:
- 想要了解 Apache Kafka 如何融入其企业系统的开发人员,特别是在以近实时的方式在多个系统之间集成数据时
- 任何想了解消息系统基本方式或发布订阅模式的人
- 技术经理/架构师找到一种将数据从一个系统集成到另一个系统的方法