|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/saga-pattern/
课程评论:没有评论
课程名称:Kafka 事件驱动微服务与 Java + Spring [第二部分] 概述:本课程为高级工程师或技术员工设计,专注于学习事件驱动微服务、Saga 模式以及使用 Spring Cloud Stream、Kafka 和 Java 响应式编程的各种架构模式。参与者将在课程结束时深入理解以下模式:Saga 协同模式、Saga 协调者模式、事务性 Outbox 模式、分发与汇聚、基于内容的路由/动态路由。 课程内容概述: - 课程伊始,参与者将学习 Spring Cloud Stream,这是一种用于开发事件驱动微服务的框架。课程将涵盖如何使用响应式 Kafka 绑定器,通过 Java 响应式和函数接口,实践消息的生产、消费、处理与确认。此外,还会介绍使用嵌入式 Kafka 进行集成测试。 - 然后,课程将讲解 Stream Bridge,这是一种将任意消息发送到 Kafka 主题的工具。Stream Bridge 能够根据内容进行消息路由,实现动态路由,并在错误处理期间充当死信主题的生产者。 - 接下来,参与者将设计一个涉及多个微服务的复杂应用,并学习如何实现包含所有服务的复杂工作流,重点关注实施 Saga 模式。课程将探讨 Saga 协调者和 Saga 协同风格,使参与者理解中央协调者的角色或 Saga 参与者之间的事件观察与反应。 - 最后,课程将介绍事务性 Outbox 模式,以解决可靠地将消息发送到 Kafka 主题的问题。该模式涉及使用一个作为代理 Kafka 主题的“Outbox”表,目标 Kafka 主题的消息首先作为应用数据库事务的一部分插入到该表中。定期查询该表确保消息已发送、标记为“已发送”,并避免重复发送。 本课程为学习事件驱动微服务设计的深入探讨,适合对 Kafka 和响应式编程有一定基础的工程师。请注意,本课程是第二部分,报名之前请先完成第一部分的学习。
*** Note *** This course has 2 parts. This is Part-2. Do NOT ENROLL without enrolling Part-1.This course is specifically designed for senior or staff-level engineers who are interested in learning about Event-Driven Microservices, the Saga Pattern, and various architectural patterns using technologies such as Spring Cloud Stream, Kafka, and Java Reactive Programming. By the end of the course, participants will gain a deep understanding and comfort with the following patterns: Saga Choreography PatternSaga Orchestrator PatternTransactional Outbox PatternFan-Out / Fan-InContent-Based Routing / Dynamic RoutingHere is what we will do in this course:The course begins by exploring Spring Cloud Stream, a framework for developing Event-Driven Microservices. Participants will learn how to use the Reactive Kafka binder and practice producing, consuming, processing, and acknowledging messages using Java Reactive and functional interfaces. Integration tests using Embedded Kafka will also be covered.Next, participants will delve into Stream Bridge, a utility for sending arbitrary messages to a Kafka Topic. Stream Bridge enables routing messages based on content, achieving dynamic routing, and even acting as a Dead-Letter-Topic producer during error handling.The course then progresses to designing a complex application involving multiple microservices. Participants will learn how to achieve a complex workflow that involves all the services, with a focus on implementing the Saga Pattern. The Saga Orchestrator and Saga Choreography styles will be explored, where participants will understand the role of a central coordinator or the observation and reaction of events among the saga participants.Finally, the course covers the Transactional Outbox Pattern, which addresses reliable message sending to a Kafka Topic. The pattern involves the use of an 'Outbox' table acting as a proxy Kafka topic. Messages intended for the Kafka topic are first inserted into this table as part of the application's database transaction. Periodic querying of the table ensures messages are sent, marked as 'Sent,' and not sent again.