软件系统集成技术方案-软件授权许可技术方案
关注留言点赞,带你了解最流行的软件开发知识与最新科技行业趋势。
在这篇文章中,我们将了解 AWS、GC和 Azure 提供的顶级集成服务,以及每项服务的优缺点。
在我们进入细节之前,让我们回答这个问题:“什么是云集成架构?” 云集成架构是云组件和多个云提供商的组合,允许跨多个数据中心交换数据。
例如软件系统集成技术方案,假设我们有一个大型银行解决方案。一些银行不想迁移他们的核心和安全数据。他们希望将其保存在本地数据中心。但是,他们无法避免使用云。他们将现有项目、正在启动的新项目,甚至整个呼叫中心和后台办公室迁移到云端。构建这种复杂的架构需要了解云提供的集成服务和工具。
让我们看看 AWS、Google Cloud 和 Azure 提供了哪些组件。
通用集成服务
了解一般的云集成最佳实践和模式至关重要。但是,了解每个云提供商提供的具体内容也很重要。在这里软件系统集成技术方案,我们将深入了解 AWS、Google Cloud 和 Azure 提供的顶级集成服务。此外,我们还会了解每项服务的优点和缺点。
AWS
AWS 有多种集成服务,提供强大的功能和简单性。
SQS(简单队列服务)
SQS是一种简单的查询服务或分布式排队系统。它是一个队列,用于存储应稍后处理的消息。SQS 是一种基于拉取的服务,允许云组件和微服务解耦。
优点:
缺点:
SWF(简单工作流服务)
SWF是一种任务协调和工作流服务。它允许构建并行和顺序工作流。它允许构建一个可靠的分布式系统,其中任务是应用程序的逻辑单元或功能。SWF 适用于处理基于人工的操作,如订单工作流或程序请求。
优点:
缺点:
AWS 步骤功能
AWS 步骤函数允许我们创建无服务器工作流或状态机;例如,自动化呼叫中心任务。Step Functions 是一种编排其他 Lambda 函数的编排函数。
优点:
缺点:
谷歌云(GC)
GC 有一个集成生态系统,一个集成平台即服务 (iPaaS)。它提供了一组工具和服务来管理和连接应用程序。Google Cloud iPaaS 包含以下服务:
Integration designer
Integration designer是一种无代码 UI 工具,能够构建由触发器和任务组成的工作流(见下文)。任务和触发器通过边和fork 和 join连接。该服务看起来与 SWF 非常相似。
触发器Triggers
触发器Triggers是必不可少的工作流元素。触发器通常是工作流的入口点,代表启动任务的事件。例如,API 触发器或发布/订阅触发器。
任务Tasks
任务Tasks是触发器之后的工作单元(或函数)。一个例子是数据映射,您可以在其中将一个数据模型集成到另一个数据模型中。一些预定义任务包括Call Integration任务、For Each Parallel任务、For Each Loop任务、Timer任务等等。
除了许多优点外,Google Cloud 也有一些缺点:
Azure
Azure 提供了一个 Azure 集成服务集。它包含多种服务以在应用程序之间建立强大的集成。以下是 Azure 提供的一组最强大的集成服务。
API管理
API 管理是一种 API 网关服务,它集成了多个 API 并连接 Azure Functions、逻辑应用程序和服务总线。
优点:
缺点:
逻辑应用
Logic Apps是一种无服务器、低代码的工作流集成工具(类似于 GC Integration designer 和 AWS SWF)。
优点:
缺点:
服务总线
服务总线是实现事件总线模式的服务。当一个组件产生一条消息,而其他组件使用它时,它提供了一种基于队列和发布/订阅集成原理的事件总线。
优点:
缺点:
事件网格
通过事件网格,您可以加入产生事件的云资源(发布者)和处理事件的资源(订阅者)。事件网格看起来类似于AWS SNS。它也是基于推送方法。事件网格侦听来自一个组件的事件,并可以在保留消息时触发其他组件。例如,一个应用程序可以向 Azure 队列发送消息和电子邮件通知。
优点:
缺点:
Azure Arc
Azure Arc是一项服务,它允许我们连接来自不同云提供商的服务并实现多云集成。该服务将作为银行多云应用程序的主要集成服务。
优点:
缺点:
结论
在本文中,我们介绍了用于构建云集成的顶级组件。然而,集成解决方案不必是企业级的:它们可以是多管齐下甚至是小型的。例如,我们的应用程序 A 需要在应用程序 B 之间交换数据。我们可以使用Azure Durable Functions或 AWS Step Functions 创建集成中间件。通过这些服务,我们可以为数据映射、通知甚至一些简单的分析创建工作流。