你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

大容量批处理事务处理

Azure Kubernetes 服务 (AKS)
Azure 服务总线
Azure 虚拟机

体系结构使用 AKS 实现处理大量事务的应用程序的计算群集。 应用程序从服务总线主题或队列接收消息中的事务。 这些主题和队列可以位于不同地理区域的 Azure 数据中心,多个 AKS 群集可以从中读取输入。

注意

此体系结构适用于在 IBM 大型机上使用面向消息的中间件的 IBM MQ 系列实现的批处理事务处理。

建筑

使用 AKS 和服务总线实现的体系结构关系图。

下载此体系结构的 Visio 文件

工作流

关系图中的编号圆对应于以下列表中的编号步骤。

  1. 体系结构使用服务总线主题和队列来组织批处理输入,并将其传递到下游进行处理。
  2. Azure 负载均衡器(第 4 层(TCP、UDP)负载均衡器,在负载均衡集中定义的服务正常实例之间分配传入流量。 负载均衡和管理连接优化处理。
  3. AKS 群集工作器节点侦听服务总线队列终结点以获取输入。
  4. Java 节点使用 Java 消息服务连接到服务总线,Java 数据库连接等 Java 接口连接到其他数据源。 它们根据需要使用其他 Java API。
  5. 可恢复事务随每个批处理步骤的业务代码一起运行。
  6. 批处理基础结构使用 Azure 加速网络来加快速度。
  7. Azure Redis 缓存、Azure Cosmos DB 和 Azure 流分析根据需要提供工作存储。
  8. 永久性数据层使用 Azure 数据工厂进行数据集成,使用 Azure SQL 托管实例(业务关键性能层)实现高可用性。 永久存储是松散耦合的,以便轻松切换到其他数据库技术,并用于优化存储组织(例如使用分片或分区)。
  9. 数据解决方案(过渡和永久性)使用 Azure 存储异地冗余存储(GRS)选项来防范灾难性故障。

组件

体系结构使用以下组件:

  • Azure 虚拟网络 在云中提供安全的专用网络。 它可以将虚拟机(VM)相互连接、Internet 和本地网络。
  • Azure ExpressRoute 提供 Azure 数据中心与本地基础结构之间的专用连接。
  • Azure Bastion 提供对 VM 的专用和完全托管的 RDP 和 SSH 访问。
  • Azure 虚拟机 提供虚拟化的灵活性,而无需提供和维护托管它的硬件。 操作系统选项包括 Windows 和 Linux。
  • 使用加速网络创建的 VM 使用单根 I/O 虚拟化(SR-IOV),大大提高了其网络性能。 有关详细信息,请参阅 使用 Azure PowerShell 创建具有加速网络的 Windows VM,并 单根 I/O 虚拟化(SR-IOV)概述。
  • Azure 网络接口将 VM 连接到 Internet,以及 Azure 和本地资源。 如此体系结构所示,可以为每个子 VM 提供自己的网络接口和 IP 地址。 有关网络接口的详细信息,请参阅 创建、更改或删除网络接口
  • Azure 托管磁盘 是 VM 的高性能、高度持久块存储。 云有四个磁盘存储选项:超级磁盘存储、高级 SSD、标准 SSD 和标准 HDD。
  • Azure Kubernetes 服务(AKS) 是一项完全托管的 Kubernetes 服务,用于部署和管理容器化应用程序。
  • 服务总线 提供可靠的云消息传送即服务(MaaS)和简单的混合集成。
  • Azure 负载均衡服务 为高可用性和高性能提供缩放。 此体系结构使用 负载均衡器。 它提供低延迟的第 4 层(TCP、UDP)负载均衡功能,用于平衡 VM 之间的流量,以及跨多层混合应用之间的流量。
  • Azure Redis 缓存 是一项闪电快速且完全托管的内存中缓存服务,用于在计算资源之间共享数据和状态。
  • Azure Cosmos DB 是一个快速 NoSQL 数据库,具有任何规模的开放 API。
  • Azure 流分析 针对应用程序和设备的快速移动数据流提供实时分析。
  • Azure Databricks 是基于 Apache SparkTM快速、简单、协作的大数据分析服务。
  • Azure SQL 是一系列 SQL 云数据库,可为整个 SQL 项目组合提供统一的体验,以及从边缘到云的各种部署选项。
  • Azure SQL 托管实例(Azure SQL 服务组合的一部分)是云中的托管、安全且始终 up-to日期 SQL 实例。
  • 数据工厂 是一种完全托管和无服务器的数据集成解决方案,用于大规模准备和转换所有数据。
  • 数据工厂支持 Parquet 文件格式。 有关详细信息,请参阅 Azure 数据工厂中的 Parquet 格式。
  • Log Analytics 是 Azure 门户中的一种工具,用于在 azure Monitor 日志 编辑和运行日志查询。 有关详细信息,请参阅 Azure Monitor中的 Log Analytics 概述。
  • Azure 存储的异地冗余存储(GRS)选项 在主要区域中的单个物理位置内同步复制数据三次,然后将其异步复制到次要区域中的单个物理位置。 有关详细信息,请参阅 Azure 存储冗余
  • Azure Blob 存储 对于云原生工作负荷、存档、数据湖、高性能计算和机器学习而言,是可大规模缩放且安全的基于 REST 的对象存储。
  • Azure 文件存储 在云中提供简单、安全且无服务器文件共享。 使用行业标准服务器消息块(SMB)和网络文件系统(NFS)协议访问共享。

方案详细信息

在 Azure 上,可以使用基于 Microsoft Azure Kubernetes 服务(AKS)和 Azure 服务总线的体系结构实现批量事务处理,例如将付款发布到帐户。 这种类型的体系结构提供大容量批处理所需的事务处理速度、缩放和可靠性。

通常,消息将保持排队,直到其事务完成,允许在发生故障时进行恢复。 此外,还可以将主题和队列复制到其他区域,以共享工作负荷并继续处理,即使某个区域发生故障也是如此。

潜在的用例

该解决方案非常适合金融、教育和科学产业。 此体系结构适用于批量处理事务,尤其是可以并行处理的独立事务。 因此,它可能是迁移大型机批处理时使用的候选项。 可能的应用程序包括:

  • 处理财务交易,如工资单、订单和付款。
  • 处理由科学仪器收集的实验数据。
  • 其他大型机批处理。

考虑

这些注意事项实现 Azure Well-Architected 框架的支柱,这是一组指导原则,可用于提高工作负荷的质量。 有关详细信息,请参阅 azure Well-Architected FrameworkMicrosoft。

可靠性

可靠性可确保应用程序能够履行对客户的承诺。 有关详细信息,请参阅 可靠性的设计评审清单。

  • Azure Site Recovery 灾难恢复服务可防止发生重大中断。 它可靠、经济高效且易于部署。
  • VM 的可用性集可确保有足够的 VM 来满足任务关键批处理需求。
  • 服务总线、AKS 和 Azure SQL 托管实例跨地理区域提供高可用性和可恢复性。

安全

安全性提供针对故意攻击和滥用宝贵数据和系统的保证。 有关详细信息,请参阅 安全的设计评审清单。

  • 服务总线批处理体系结构中的所有组件都适用于 Azure 安全组件,例如Microsoft Entra ID、虚拟网络和加密。

成本优化

成本优化是研究减少不必要的开支和提高运营效率的方法。 有关详细信息,请参阅 成本优化的设计评审清单。

若要估算此解决方案的实现成本,请使用 定价计算器

AKS 群集的自动缩放功能以及其他提供按需缩放的 Azure 平台即服务(PaaS)功能将成本保持在最低水平。

下面是特定组件的定价注意事项:

卓越运营

卓越运营涵盖部署应用程序并使其在生产环境中运行的运营流程。 有关详细信息,请参阅 卓越运营的设计评审清单。

性能效率

性能效率是工作负荷的缩放能力,以满足用户以高效方式满足它的需求。 有关详细信息,请参阅 性能效率的设计评审清单。

  • 该体系结构旨在适应独立事务的并行处理。
  • 服务总线、AKS 和其他 Azure PaaS 功能为事务处理、计算和数据存储提供高性能。
  • 服务总线、AKS 和其他 Azure PaaS 功能根据需要动态缩放。

后续步骤