Files
nexus/wiki/sources/public-cloud-learning-sessions-opentext-event-driven-architecture-part-2-2024091.md

63 lines
4.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Public Cloud Learning Sessions (OpenText) - Event Driven Architecture Part 2"
type: source
tags:
- EDA
- Event-Driven
- Architecture
- OpenText
date: 2024-09-17
last_updated: 2026-05-05
---
## Source File
- [[Cloud & DevOps/Public-Cloud-Learning-Sessions/09_Serverless_AI/public-cloud-learning-sessions-opentext-event-driven-architecture-part-2-2024091]]
## Summary用中文描述
- 核心主题事件驱动架构EDA进阶实践——最佳实践、团队独立性、常见消息模式
- 问题域:如何在企业云环境中设计、落地和治理事件驱动架构
- 方法/机制Dr. Anil GiriAWS 解决方案架构师)详解 EDA 三组件(事件生产者/消费者/代理、事件路由器EventBridge/SNS与事件存储SQS/Kinesis、编排与编排模式Choreography vs Orchestration、幂等性、事件排序、团队去中心化所有权
- 结论/价值:帮助团队掌握 EDA 生产级最佳实践,在保证弹性和可扩展性的同时实现团队独立自治
## Key Claims用中文描述
- 事件代理分两类事件路由器EventBridge/SNS按规则过滤路由和事件存储SQS/Kinesis由消费者自己过滤
- EventBridge 比 SNS 功能更丰富,支持跨 AWS 服务的事件触发和工作流编排
- 幂等性Idempotency是处理 EDA 消息重复的关键机制AWS Lambda 异步调用会自动重试
- SQS FIFO 和 Kinesis Data Streams 可保证事件顺序;标准 SQS 和 EventBridge 支持乱序处理
- 团队独立性应采用去中心化所有权云卓越中心Cloud CoE提供基础设防团队自主消费事件
- Fan-out 模式通过 SNS 主题或 EventBridge 规则将事件分发到不同团队
## Key Quotes
> "Event is nothing but it's like a change in the state or an update." — Dr. Anil GiriEDA 定义
> "Everything fails every time means like whatever you have designed and whatever workload you is running it may fail any time." — 容错设计哲学
## Key Concepts
- [[Event-Driven-Architecture]]:一种软件架构范式,通过事件的生产、消费和响应实现松耦合通信
- [[Choreography]]:编排模式的一种,各微服务自主通信,无需中央协调者
- [[Orchestration]]:编排模式的一种,通过中央协调者(如 AWS Step Functions控制工作流步骤
- [[Idempotency]]:幂等性——同一操作执行一次或多次产生相同结果的特性
- [[Fan-Out-Pattern]]:一对多消息分发模式,通过 SNS 主题或 EventBridge 规则将事件广播给多个消费者
- [[Competing-Consumer-Pattern]]竞争消费者模式同一时间只有一个消费者可处理消息SQS 实现)
- [[Dead-Letter-Queue-DLQ]]:死信队列,用于处理失败事件,防止消息丢失
## Key Entities
- [[AWS]]Amazon Web ServicesEventBridge/SQS/SNS/Lambda/Kinesis/AWS Step Functions 的托管方
- [[Amazon-EventBridge]]AWS 事件路由器支持规则过滤、跨服务触发、Schema 注册
- [[Amazon-SQS]]AWS 消息队列服务,分标准队列(乱序/高效)和 FIFO 队列(有序/Exactly-Once
- [[Amazon-SNS]]AWS 发布/订阅通知服务,实现 Fan-out 分发
- [[AWS-Lambda]]AWS 无服务器函数EDA 的核心事件消费者,异步调用自动重试
- [[AWS-Step-Functions]]AWS 状态机编排服务,实现 Orchestration 模式
- [[Kinesis-Data-Streams]]AWS 流数据服务,支持事件持久化和有序处理
- [[Dr.-Anil-Giri]]AWS 解决方案架构师Event Driven Architecture 系列主讲人
- [[OpenText]]会议主办方Public Cloud Learning Sessions 系列活动的组织者
## Connections
- [[public-cloud-learning-sessions-opentext-event-driven-architecture-part-1-2024091]] ← part_of ← [[public-cloud-learning-sessions-opentext-event-driven-architecture-part-2-2024091]]Part 1 与 Part 2 为同一系列Part 2 补充具体演示内容)
- [[public-cloud-learning-sessions-opentext-serverless-computing-20240903-160139-mee]] ← related_to ← [[Event-Driven-Architecture]]Serverless 天然适合事件驱动Lambda 是 EDA 的核心执行单元)
- [[Event-Driven-Architecture]] ← depends_on ← [[Amazon-EventBridge]]EventBridge 是 AWS EDA 的核心事件总线)
- [[Event-Driven-Architecture]] ← uses ← [[Idempotency]](幂等性是 EDA 生产级落地的必要保障)
## Contradictions
- 与 [[ctp-topic-64-scaling-out-with-amazon-eks]] 在扩展方式上的差异——EDA 通过事件驱动异步扩展消费者按需处理EKS 通过容器编排横向扩展Pod 副本数调整),两者适用于不同场景但可互补使用