Amazon Web Services – 简单工作流服务简介
在本文中,我们将讨论 Amazon AWS 的重要方面之一,即 Amazon SWS 或 SWF。它代表亚马逊简单的工作流程服务。它是亚马逊网络服务 (AWS) 的一部分。 AWS 云提供商服务器。它提供计算、存储、管理和网络等领域的服务,以及按需服务。这意味着客户可以请求一组特定的服务。在托管和构建方面,一项云服务可以提供帮助。
AWS 有一个免费套餐,允许刚开始使用云计算的客户注册一个帐户并开始免费使用这些服务。
现在让我们谈谈亚马逊网络服务的重要组成部分,Amazon SWF(亚马逊简单工作流服务)。
亚马逊简单工作流程服务:
Amazon Simple 工作流服务 (Amazon SWF) 是基于任务的应用程序接口,经过编程可以轻松跨分布式应用程序组件协调不同的工作。这里的任务代表应用程序正在执行的逻辑工作单元。它包括根据应用程序的逻辑流程管理任务间依赖关系、创建计划和并发性。
在它的帮助下,您可以完全控制任务的实施。您可以在不考虑潜在复杂性的情况下协调它们。跟踪和维护其状态的担忧不再是问题。通过使用它,可以实现工人来执行任务。
任务可以长期或短期创建,也可以在一段时间后超时并可能需要重新启动。
Amazon SWF 存储任务并在需要时将它们分配给工作人员。它还维护它们的状态并跟踪它们的进度,直到它们完成。
Amazon SWF 支持各种应用程序要求,适用于各种不同范围的任务,包括 Web 应用程序后端、分析管道等。
它是如何函数的?
Amazon SWF 的主要函数是控制应用程序的工作流程。它充当应用程序许多组件的协调中心。就其功能而言,最重要的是:
- 它维护应用程序的状态。
- 它监督工作流的执行和进度
- 它包括诸如持有和调度等任务。
- 它定义了您的应用程序主机的哪些职责将被执行。
Amazon SWF 的概念:
当涉及到概念时,首要概念是第一位的。在 Amazon SWF 中,使用了短语“工作流”。它是一组具有特定目标和逻辑的活动,这些活动与特定任务相关联。如果我们使用一个示例,我们可以更好地理解它:工作流可以接受订单,然后执行完成它所需的步骤。
每个进程都保存在称为域的 Amazon Web Services 资源中。它负责确定工作流的范围。一个 AWS 账户中可以使用多个域,每个域可以包含多个工作流,但来自不同域的工作流无法通信。在开发 Amazon SWF 工作流活动时,您必须简要指定每个必需的任务并向 Amazon 注册每个活动。
在此过程中,某些操作可能需要重复多次,具体取决于要求。例如,您可以创建一个活动来处理客户订单序列中的购买项目。如果消费者不止一次购买任何东西,则必须重复该活动。
SWF 演员:
参与者可以是工作流发起者、决策者或活动工作者,这些参与者使用 Amazon SWF 的 API 与其连接。任何计算机语言都可以用来创建这些字符。下面讨论了 Amazon SWF 架构,包括 Amazon SWF 及其参与者。
工作流程启动器:
任何可以启动流程执行的程序都称为工作流启动器。例如,一个工作流启动器可能是消费者下订单的网站。客户服务代理用来代表客户下订单的移动应用程序或系统可能是另一个工作流启动器。
决定者:
决策者是执行工作流协调逻辑的程序。工作流执行中的活动任务流由决策者控制。工作流中的任何修改,无论是任务的执行还是完成,都是决策者的责任。当决策者收到来自 Amazon SWF 的决策任务时,它会检查工作流程执行历史以确定接下来要采取的操作。决策者使用决策将这些操作传输回 Amazon SWF。决策是一种 Amazon SWF 数据类型,可用于表达各种后续步骤和决策。
活动工作者:
活动工作者是完成工作流所需的活动任务的过程。您在应用程序中确定的任务之一是活动任务。您必须首先使用 Amazon SWF 控制台或注册活动在您的工作流程中注册活动任务。每个活动工作者都会在 Amazon SWF 中轮询适合他们执行的新任务;某些活动仅适用于特定活动的工作人员。活动工作线程接收任务、处理并完成它,然后将任务的完成情况连同结果一起传达给 Amazon SWF。之后,活动工作者轮询新的分配。
通过这种方式,Amazon SWF 服务充当了一个可靠的中心枢纽,通过它可以在决策者、活动工作人员和其他重要组织(例如工作流负责人)之间共享数据。每个工作流程执行的条件也由 Amazon SWF 维护,使您的应用程序不必长期维护状态。
执行历史:
保存在程序历史中的事件称为执行历史。工作流历史是其活动的全面、一致和准确的记录。
工作流程执行:
在这里,我们将讨论一些在 Amazon SWF 中执行工作流的简单步骤。
- 创建活动工作者以执行工作流的处理阶段。
- 创建一个决策者来执行您的工作流的协调逻辑。
- 使用 Amazon SWF 注册您的操作和流程。此步骤可以通过编程方式或使用 AWS 管理控制台完成。
- 让您的活动工作者和决策者启动并运行。这些演员可以对任何人执行。要托管决策者或活动工作者,您可以使用 Amazon Elastic Compute Cloud (Amazon EC2) 等云计算实例、数据中心的服务器,甚至是移动设备。一旦决策者和活动工作人员启动并运行,他们应该开始轮询 Amazon SWF 以获取分配。
下面是一个简单的工作流程示例,可帮助您了解 Amazon SWF 工作流程的工作和执行:
让我们以电子商务应用程序为例,下图显示了工作流中的简单电子商务订单处理。以下示例中涉及人员和自动化流程。
工作流程的注册和执行开始,当消费者下订单时,工作流程开始。它由四个任务组成:
- 仔细检查订单。
- 如果订单合法,则向客户收费。
- 收到付款后,发送订单。
- 如果已发送购买,请保存订单信息。
必须先验证订单,然后才能从信用卡扣款 必须先对信用卡成功扣款,然后才能发送订单,并且必须先发货,然后才能记录订单。尽管如此,这些任务可以在多个地方执行,因为 Amazon SWF 支持分布式操作。如果任务是程序化的,它们可以用各种编程语言或使用各种工具编写。
好处:
- 逻辑分离: AWS SWF 将后台活动的控制流与持有特定业务逻辑的实际工作单元分离,并逐步合理地对其进行修改。这使您能够从使其独特的底层业务逻辑开始,逐一管理、维护、扩展和声明您的应用程序。随着业务需求的变化,您可以轻松更改应用程序逻辑,而无需担心底层状态机制、任务分派或流控制。
- 简单: Amazon SWF 是一种完全托管的新型云工作流互联网服务,它取代了传统工作流解决方案和方法自动化软件系统的质量。 Amazon Simple Workflow 减轻了开发人员管理方法自动化基础设施管道的负担,使他们能够专注于其应用程序的独特功能。
- 可靠:传统的工作流程服务和流程控制软件系统正在被 Amazon SWF 取代,作为一种完全托管的新型云工作流程互联网服务,它是一个完全可靠的服务器,可以减轻开发人员维护方法自动化基础设施管道的工作量,使他们能够专注于关于他们的应用程序的独特功能。
- 可扩展: Amazon SWF 随着您的应用程序的使用而实时扩展。随着您向应用程序中添加更多云流程或提高工作流程的质量,您无需手动管理工作流程服务。
- 灵活:用户可以使用 Amazon Simple Workflow 更改应用程序组件。它还可以更改以任何编程语言编写的协调逻辑,并在云或本地运行它。
到目前为止,我们已经介绍了 Amazon SWF 的一些基本和关键概念和功能。最后,我们可以说它真的很强大。这是一个简单且适应性强的工具,有益且易于使用。它可能对您的业务极为有益。它是一种实用、用户友好且适应性强的工具。