写点什么

亚马逊云科技上的 Temporal 旨在简化弹性分布式系统的构建

  • 2025-05-30
    北京
  • 本文字数:1552 字

    阅读完需:约 5 分钟

大小:772.29K时长:04:23
亚马逊云科技上的Temporal旨在简化弹性分布式系统的构建

Temporal Technologies 这家公司开发了Temporal,这是一个专注于持久执行的开源微服务编排平台。该公司已经在亚马逊云科技市场上提供了Temporal Cloud。通过在亚马逊云科技上提供服务,该公司希望简化用于大规模应用程序的弹性分布式系统的开发工作。

 

在最近的一篇博客文章中,亚马逊云科技的高级合作伙伴解决方案架构师 Sai Kotagiri 和 Temporal 的工作人员解决方案架构师 Neil Dahlke 详细说明了 Temporal 平台与亚马逊云科技基础设施的结合,如何使组织能够构建出可以保持一致性,并在系统故障时自动恢复的容错应用程序。

 

文章讨论了分布式系统的固有挑战,特别是那些处理大量交易的企业所面临的挑战。它假设了一次高峰销售期间的电子商务网站中断作为例子。数据库故障、网络问题、API 超时和队列溢出等问题可能导致服务降级和数据不一致。作者认为,持久执行是一种确保交易完成不受中断影响的范式。这种方法会跟踪每个步骤的状态并允许从故障点恢复,这对于克服这些挑战来说是非常重要的。

 

在讨论持久执行的重要性时,Sewen,一位在 Hacker News 上讨论相关的持久执行引擎 Restate 的参与者解释道:

 

我们对持久执行的看法是,它不仅仅是用于长时运行的代码……持久执行对于任何有多个建立在彼此之上的步骤的事情都非常有帮助。只要你的服务与多个 API 交互、更新一些状态、保持锁或排队事件……几乎所有改变状态的后端逻辑最终都从持久执行基础中受益……问题是:我们能否使开销足够低,使系统足够轻量级,从而让它变得适合用于所有这些情况?这就是我们在这里试图构建的东西。

 

Temporal 的平台通过其SDK提供持久执行能力,允许应用程序在故障和分布式进程中保持状态。开发人员定义工作流来编排应用程序逻辑,并将它们分解为具有可配置重试策略的独立活动。然后,工作人员通过任务队列与 Temporal 服务器通信以执行这些工作流和活动。Temporal 服务管理这些工作流的执行和状态,部署选项包括在亚马逊云科技上自托管或使用 Temporal Cloud。



(来源:亚马逊云科技合作伙伴博客文章)

 

文章强调的一个关键优势是 Temporal 的事件驱动架构,它为每个工作流动作维护一个详细、不可变的事件历史。这与持久状态管理相结合,使 Temporal 能够通过检测问题、评估当前状态、审查事件历史并从最后一个有效点恢复执行来从故障中系统性地恢复。该平台保证了精确一次执行语义,确保即使在中断期间也能保持数据完整性。

 

正如 Reddit 帖子上的一位回应者所指出的:

 

是的,我使用过 Temporal.io。如果你需要管理可靠复杂的长时运行工作流,它是一个坚固的框架。与 AWS Step Functions 不同,它开箱即用地处理重试、状态持久性和故障恢复,而不需要你编写大量自定义代码。

 

文章还强调了在亚马逊云科技服务,如 Amazon Elastic Kubernetes Service(Amazon EKS)和 Amazon Elastic Container Service(Amazon ECS)上以容器化环境运行 Temporal Workers 时的效率提升。这种方法根据实时需求自动扩展处理能力,确保即使在高峰负载期间也保持一致的性能。



(来源:亚马逊云科技合作伙伴博客文章)

 

Temporal 和亚马逊云科技之间的集成还扩展到了安全性和运营卓越层面。AWS Certificate Manager 处理 mTLS 证书管理以实现安全通信,而 AWS PrivateLink 提供客户 VPC 和 Temporal Cloud 之间的私有连接。Amazon Kinesis 集成简化了实时审计日志记录,以增强运营可见性。客户可以在 Amazon EC2 实例或 ECS 或 EKS 上的容器化环境中部署基于 Temporal 的应用程序,利用 AWS 的可扩展性和资源利用。

 

博客文章总结说,通过结合 Temporal 的持久执行能力和亚马逊云科技的全面基础设施和管理服务,组织可以专注于业务逻辑而不是管理基础设施故障的复杂性,最终改善开发体验和减少运营开销。

 

最后,Learn Temporal上有示例和教程。

 

原文链接:

Temporal on AWS Aims to Ease Building Resilient Distributed Systems

2025-05-30 08:007577

评论

发布
暂无评论
发现更多内容

Chia(奇亚)算力挖矿系统开发详解丨Chia(奇亚)算力挖矿开发源码功能

系统开发咨询1357O98O718

BZZ节点算力挖矿系统开发流程丨BZZ节点算力挖矿现成源码

系统开发咨询1357O98O718

如何查看SAP CRM WebUI,C4C和Hybris里的页面技术信息

汪子熙

CRM abap WebClient UI SAP UI5

help.hybris.com和help.sap.com网站的搜索实现

汪子熙

Java SAP abap Hybris

SAP Cloud for Customer(C4C)和微软Outlook的集成

汪子熙

微软 SAP abap SAP UI5 outlook

Pulumi AWS 在进行预览更新的时候持续提示 Key 错误

HoneyMoose

使用ABAP(ADBC)和Java(JDBC)连接SAP HANA数据库

汪子熙

JavaScript SAP abap WebClient UI SAP UI5

进大厂必备的项目经验!基于Spring Cloud再造滴滴打车项目实战

Java架构追梦

Java 架构 微服务 SpringCloud 网约车项目

XCH奇亚算力挖矿系统开发成功案例丨XCH奇亚算力挖矿开发(源码演示)

系统开发咨询1357O98O718

Hybris ECP里Customer对应的数据库表

汪子熙

JavaScript CRM SAP WebClient UI SAP UI5

ABAP下载的病毒扫描Virus Scan

汪子熙

下载 SAP abap 病毒扫描

Redis - 复制

旺仔大菜包

redis

Java并发编程——AQS源码解析

Antway

6月日更

☕【JVM技术之旅】字节码指令重排序

码界西柚

JVM 指令重排序 6月日更

Github大神梳理了各个大厂春秋招面经,分享上万道面试题及答案,面试过程的文档教程!

Java架构师迁哥

JavaScript and Ruby in ABAP

汪子熙

JavaScript SAP abap WebClient UI

Internationalization(i18n) support in SAP CRM,UI5 and Hybris

汪子熙

JavaScript CRM SAP abap SAP UI5

IP数据库的定位能力在商业端的具体应用有哪些?(一)

郑州埃文科技

还在用SELECT COUNT统计数据库表的行数?Out了

汪子熙

SAP abap hana

使用ABAP批量下载Markdown源文件里的图片到本地

汪子熙

markdown SAP abap download

【LeetCode】反转每对括号间的子串Java题解

Albert

算法 LeetCode 6月日更

华为VS谷歌:万物互联,谁主沉浮?

老猿Python

华为 Google HarmonyOS 谷歌 Fuchsia

SAP ABAP和Hybris的源代码生成工具

汪子熙

Java SAP abap Hybris commerce

IP地址定位在网站上的几个代表性应用

郑州埃文科技

Hybris UI的Route(路由)实现

汪子熙

Java SAP WebClient UI Hybris

Jerry和您聊聊Chrome开发者工具

汪子熙

chrome 大前端 SAP Chrome开发者工具

微服务简介

wildpig

容器 微服务 Spring Cloud

树莓派体验Docker

IT蜗壳-Tango

6月日更

Pulumi Stack 命令不能找到默认的 Stack

HoneyMoose

SAP BSP和JSP里的UI元素ID生成逻辑

汪子熙

Java jsp SAP abap SAP UI5

乾坤大挪移:SAP CRM WebClient UI 和 SAP Fiori UI 混搭并存

汪子熙

CRM SAP abap WebClient UI bsp

亚马逊云科技上的Temporal旨在简化弹性分布式系统的构建_亚马逊云科技_Steef-Jan Wiggers_InfoQ精选文章