re:Invent 2023 | 引领 Serverless 事件驱动的架构过程

关键字: [Amazon Web Services re:Invent 2023, Amazon EventBridge, Event Driven Architecture, Messaging Patterns, Integration Patterns, Domain Driven Design, Operational Maintenance]

本文字数: 1100, 阅读完需: 6 分钟

视频

如视频不能正常播放,请前往bilibili观看本视频。>> https://www.bilibili.com/video/BV1wQ4y1V7Kr

导读

无服务器事件驱动架构(EDAs)是一种构建软件系统的强大方法,可帮助企业快速响应并灵活适应不断变化的业务条件。在本讲座中,您将了解企业在采用 EDAs 时所经历的历程,包括从最初的设计和实施到持续的运营和维护。本讲座强调了 EDAs 可为企业带来的诸多好处,并将重点放在 EDAs 中具有挑战性且经常被忽视的领域。通过结合模式、最佳实践和实用技巧,本讲座将全面概述实施 EDAs 的机遇和挑战,并帮助您了解如何利用 EDAs 推动业务成功。

演讲精华

以下是小编为您整理的本次演讲的精华,共800字,阅读时间大约是4分钟。如果您想进一步了解演讲内容或者观看演讲全文,请观看演讲完整视频或者下面的演讲原文。

戴夫·博伊恩,作为亚马逊云科技的专家,专注于无服务器和事件驱动架构的研究,现已邀请观众参加他的演讲,主题为“探索无服务器事件驱动架构之旅”。他对有机会亲自向在线观众分享知识感到兴奋。

戴夫拥有超过15年的企业和初创公司的经验,曾为开源事件驱动工具的开发做出贡献。这使他具备了丰富的经验,能够指导如何利用无服务器技术构建事件驱动解决方案。他为本次讲座精心准备了一系列内容,涵盖了从初始构建到长期运营维护的所有方面。

戴夫首先介绍了事件驱动架构的采用增长情况。他认为这一趋势得益于亚马逊云服务等无服务器技术的普及,使得实现复杂的事件驱动模式变得更加容易。借助这些工具,企业现在可以轻松地实施之前难以承受的高复杂性解决方案。

戴夫解释了事件驱动架构的基本组成部分,包括生产者、消费者以及在他们之间传递事件的渠道或代理。然而,在实际操作中,构建现实世界的事件驱动系统不仅仅涉及到这些基本组件。还需要经历多个阶段、设计模式和潜在的陷阱。为了展示这个过程的复杂性,戴夫用了一座山的视觉隐喻。山顶代表着事件驱动架构带来的承诺好处,如解耦合系统、业务敏捷性和随时间推移的可扩展性。山谷则象征了团队在过程中可能遇到的挑战,如边界不明确、缺乏标准、异步与同步问题等。戴夫强调了理解这些风险并在设计时避免它们的必要性。

Dave建议在开始实施之前,先进行基础领域建模和行为分析。随着事件的捕捉和时间的推移,它们会像故事一样展开,表格则反映了当前的状态。为了识别相关事件和有限的上下文,他建议在像Event Storming研讨会这样的会议上与领域专家合作。这种方式的预先设计可以确保事件能够干净地映射到业务概念,而不是实现细节。

Dave比较了两种可能的实施方法:一种是先实施,可以快速实现初步价值提升;另一种是先进行行为分析,虽然前期分析更多,但它能建立共享的通用语言和有限的上下文,防止出现纠缠依赖。

在准备实施的过程中,Dave提醒要注意不同的消息类型,如命令、事件和查询。例如,一个命令代表了可以被拒绝的意图,而一个事件通知了已经发生某事的听众。他还介绍了常见的消息模式,包括点对点队列、发布-订阅、事件流和更改数据捕获。

在过渡到实践部分,Dave列举了几个例子:例如,如果消费者必须从生产者那里获取事件详情,就会意外地紧密耦合。富化器模式允许稀疏的事件,消费者可以根据需要请求额外的数据。此外,还可以通过加密来保护事件中的敏感数据,只有授权的服务才能解密属性。在处理大负载时,可能需要使用S3来存储庞大的数据。另外,如果直接消费事件,可能会导致紧密耦合。因此,应采用分析集成风格,如保守主义与开放主机服务。较低的集成成本允许更多的实验,例如使用事件进行跨组织通信。还需要区分内部实现事件和外部公开事件。

Dave重申了长期成功的关键在于运营维护。他建议建立事件标准,通过方案和文档提高可发现性,并围绕有限上下文进行清晰的沟通。保持对复杂度蔓延的警惕使组织能够维持由事件驱动架构承诺的灵活性。

总的来说,Dave强调,构建事件驱动的系统不是一夜之间就能实现的,而是一个迭代的过程。关键步骤包括:基础领域建模、行为分析、与领域专家合作、注意消息类型和消息模式、实践应用、避免紧密耦合、保护敏感数据、处理大负载、区分内部和外部事件、建立事件标准和提高可发现性以及关注运营维护。

在发展领域知识之前,不应直接开始实施。应采用诸如队列和发布-订阅等消息模式。此外,要了解加密、有效载荷和合同等方面的常见问题。长期来看,需遵循标准、编写文档并保持有效的沟通。他以亚马逊云科技提供的服务为例,如SQS、EventBridge、DynamoDB Streams和EventBridge Pipes,展示了这些服务如何支持各个阶段的事件驱动过程。

戴夫强调,合理运用事件能够推动去耦合系统的创新,而随意使用事件则可能导致随着时间的推移逐渐演变成紧密连接的“大泥球”。通过审慎考虑并将事件作为核心关注点进行拥抱,企业可以设计出避免复杂陷阱的可扩展解决方案,从而在未来创造商业价值。

下面是一些演讲现场的精彩瞬间:

演讲者直接进入了关于Servius架构冒险之旅的繁忙会议。

通过使用SQS的事件驱动架构,服务之间的解耦得以实现,从而提高了可扩展性和可靠性。

领导者强调了Amazon EventBridge如何支持跨多个亚马逊云科技服务的发布-订阅模式,从而实现事件驱动的架构。

领导者回顾了一个错误的案例,误认为一家保险初创公司由于解耦的事件消费者而迅速发展,强调了事件模式设计的重要性。

演讲者强调了在设计系统时将事件视为重要组成部分的重要性。

Amazon EventBridge的schema发现功能可以自动检测事件模式并实施版本控制,从而实现代码生成和简化集成。

演讲者分享了一个免费的视觉资源包,其中包括有关事件驱动架构的详细信息。

总结

亚马逊云科技(Amazon Web Services)是全球领先的云计算和科技公司之一。作为一名开发者倡导者,Dave Boyne在此会议上发表了一篇名为“探索成功采用无服务器事件驱动架构之路”的精彩演讲,分享了他关于如何通过亚马逊云科技的服务有效地采用事件驱动架构的经验。

Boyne首先指出,由于像亚马逊云科技的Lambda、Step Functions和EventBridge等服务使得事件驱动架构变得更加实用,因此其应用范围正在不断扩大。然而,构建高效的事件驱动系统需要考虑多种模式和权衡因素。

他强调了在实施事件驱动架构之前,首先要深入了解系统行为和事件的重要性。通过使用事件风暴进行可视化建模,开发团队可以识别出相关的事件、聚合边界和语言。在事件驱动的系统中,命令、事件和查询都属于消息类型。使用点对点队列和发布-订阅等消息模式可以降低组件间的依赖程度。

接下来,Boyne谈到了一些常见问题,如不清晰的事件负载量架构导致的意外耦合、敏感数据泄露以及消息大小限制等。他建议采用诸如内容丰富化、加密和安全检查模式等解决方案来解决这些问题。通过事件集成,不同组织之间可以实现快速的协同创新。而领域驱动设计和有界上下文有助于避免领域间过高的耦合度。

为了实现长期的成功,Boyne强调了标准化、可发现性和沟通的重要性。通过使用方案、编写详细的文档和使用通用的语言,有助于系统的持续发展。最后,他再次强调,通过精心设计的架构,企业可以在基于亚马逊云科技的事件驱动系统上实现预期的敏捷性和可扩展性。

演讲原文

https://blog.csdn.net/just2gooo/article/details/134835212

想了解更多精彩完整内容吗?立即访问re:Invent 官网中文网站!

2023亚马逊云科技re:Invent全球大会 - 官方网站

点击此处,一键获取亚马逊云科技全球最新产品/服务资讯!

点击此处,一键获取亚马逊云科技中国区最新产品/服务资讯!

即刻注册亚马逊云科技账户,开启云端之旅!

【免费】亚马逊云科技“100 余种核心云服务产品免费试用”

【免费】亚马逊云科技中国区“40 余种核心云服务产品免费试用”

亚马逊云科技是谁?

亚马逊云科技(Amazon Web Services)是全球云计算的开创者和引领者,自 2006 年以来一直以不断创新、技术领先、服务丰富、应用广泛而享誉业界。亚马逊云科技可以支持几乎云上任意工作负载。亚马逊云科技目前提供超过 200 项全功能的服务,涵盖计算、存储、网络、数据库、数据分析、机器人、机器学习与人工智能、物联网、移动、安全、混合云、虚拟现实与增强现实、媒体,以及应用开发、部署与管理等方面;基础设施遍及 31 个地理区域的 99 个可用区,并计划新建 4 个区域和 12 个可用区。全球数百万客户,从初创公司、中小企业,到大型企业和政府机构都信赖亚马逊云科技,通过亚马逊云科技的服务强化其基础设施,提高敏捷性,降低成本,加快创新,提升竞争力,实现业务成长和成功。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李白的朋友高适

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值