什么是 API 编排?

一条有几条弯道的道路的鸟瞰图,中间有一座立交桥
Gita Jackson

Staff Writer

Michael Goodwin

Staff Editor, Automation & ITOps

IBM Think

什么是 API 编排?

API 编排是将多个应用程序编程接口 (API) 组合到一个统一系统的过程。编排可协调多个 API 的数据流、顺序和依赖关系,以实现特定的业务目标并提供更加无缝的用户体验。

理解编排的一个简单方法是,它提供了单一 API(编排层),用于管理其他 API。它允许客户端调用一个 API 来访问包含多个服务和资源的工作流,而每个服务和资源都有自己的 API。

通过在客户端和 API 之间添加 API 编排层,组织可以协调多个服务和应用程序,从而创建单一、流畅的系统。

许多组织依赖于协同工作的复杂 API 网络来完成业务任务。这些 API 在后台忙碌地工作。为了高效工作,它们需要与发出 API 请求的客户端以及其他应用程序和服务进行通信。API 编排在现有服务之上增加了一层功能,使这些服务能够彼此协同工作。这样,即使后端在紧张运行,用户也能获得流畅的前端体验。

当一个组织正在经历数字化转型,并且在同一计算环境中同时拥有旧版系统和服务以及新版系统和服务时,API 编排就显得尤为重要。旧版系统通常混合使用多种 API 类型,而 SaaS 应用程序与本地部署系统和数据库之间的通信协调可以通过编排层来实现。

微服务架构中,API 编排也很重要,因为应用程序的功能依赖于许多独立组件之间的通信。这些组件通过 API 进行通信,编排则管理和协调这些单个组件,以实现更大规模服务的交付。

API 编排如何运作?

API 编排通过将多个 API 协调到一个系统中,帮助管理和路由复杂的工作流。此类工作流通常需要访问多个服务或资源,且每个服务或资源均需要通过不同的 API 访问。编排层为应用程序和服务提供了单一接口,否则这些应用程序和服务就需要调用每个单独的 API。

以下是电子商务工作流中的一个用例:当客户在电子商务平台上购物时,需要许多服务并调用多个端点才能完成订单。这可能需要调用一个 API 来检查库存,再调用其他 API 来提取特定商品、访问支付平台、从 CRM 软件中提取数据、将包裹发送给承运商等等。

为了使此类业务流程能够实时运行(正如预期那样),所有这些操作都必须按正确的顺序进行。编排层将所有这些调用纳入一个一致的逻辑工作流,简化了原本复杂的事件序列。

API 编排可以协调这些不同服务之间的通信,促进工作流中各种任务的执行,以实现特定目标。编排就像指挥家一样,协调多个 API,以创建一个可通过单一前端 API 访问的统一系统。

API 编排与 API 集成

虽然 API 编排和 API 集成是不同的概念,但它们是相关的。API 集成有助于促进 API 编排。

API 集成是不同的软件应用程序、系统和平台相互连接并交换数据的过程。API 集成是指使用 API 公开集成流,并使应用程序和系统(无论是旧版还是新版)能够交换数据和共享服务。

API 编排是将多个 API(其中一些可能已用于连接企业系统和集成流)协调起来,以执行特定任务的过程。API 编排可以在有价值的工作流中安排这些集成的应用程序、系统和数据库。

简而言之,API 集成是指使用 API 公开集成流并连接企业系统和工作流;API 编排是指将多个 API 组合起来创建单一系统。

API 网关和 API 编排

API 网关和 API 编排可以执行类似的任务。虽然网关可以运行一些编排功能并实现编排,但 API 编排超出了网关的能力。

API 网关是一种 API 管理工具。它充当 API 调用的单一入口点,并将来自客户端的调用定向到后端资源。它可以执行类似于 API 编排的功能,例如缓存、错误监控和数据转换。API 网关还可以执行速率限制等基本功能。

主要区别在于 API 网关为 API 请求提供单一入口点并管理这些请求流。API 编排可协调多个 API 以完成特定任务。

什么是微服务中的 API 编排?

微服务或微服务架构是一种云原生架构方法,在这种方法中,单个应用程序由很多松散耦合并能够独立部署的更小组件或服务组成。这些独立部分通过 API 进行通信,微服务编排有助于协调这些微服务,以创建连贯的更大型应用程序。

只有当所有组件之间的通信都协调一致时,微服务架构才能发挥预期的作用,而编排则有助于实现这种协调。编排还增加了服务发现、工作流控制和错误处理功能,使组织能够将微服务与其旧版系统集成。

API 编排的核心功能

编排层可执行多项重要功能,提高组织 API 的效率。这些功能包括:

  • 整合
  • 数据转换
  • 逻辑工作流
  • 自动化
  • 错误通知
  • 重试
  • 身份验证和 API 安全
  • 缓存

这些功能对于简化组织的 API 工作流和减少复杂业务流程中所需的人工干预至关重要。

集成:组织经常混合使用 API 类型、风格和语言,例如 GraphQL、RPC、WebSocket 和 REST API,以满足不同的用例。此外,组织可能在同一计算环境中混合使用新版和旧版系统。编排层有助于规范系统之间的数据结构,并协调这些不同类型 API 之间的通信

数据转换当客户端应用程序提交 API 调用时,调用和响应的格式取决于 API 的协议、语言或架构风格。如果工作流需要这些 API 相互通信和分享数据,那么需要将一个 API 的响应转换为可读格式,以便发送给下一个 API。

编排引入了一种标准化的调用格式,既能满足客户端的调用要求,也能满足响应调用的后端 API 的要求。

逻辑工作流:当数字工作流涉及多个 API 时,按特定顺序调用这些 API 通常非常重要。API 编排工具可以通过可视化工作流设计等工具,完善这一系列复杂的调用和响应过程。

自动化:自动化是简化数字工作流的关键方面。API 编排工具提供无代码连接器等功能,使用户能够构建和自动执行不同服务之间的交互。

错误通知:API 编排工具可以帮助监控和标记编排层中的错误,从而减少在发生错误时检查每个应用程序和微服务的需要。

重试:API 之间的通信有时会出现故障,而 API 协调工具可以重试这些故障通信,从而在出现短暂中断时仍能保持数据流畅通。

身份验证和 API 安全:API 安全固然重要,但身份验证工作流有时会减慢 API 之间的通信。此外,组织可能拥有使用各种 API 身份验证措施来授予权限的 API,例如 API 密钥、OAuth 和 API 令牌。API 编排工具可以自动执行身份验证管道,在不中断数据流的情况下确保敏感数据的安全

缓存:为了保持 API 工作流的高效,API 编排工具支持数据缓存功能,即将频繁引用的数据存储在缓存中,以便在不通过 API 调用和响应过程的情况下进行访问。

API 编排的优势

API 编排可以帮助优化组织的 API 环境。API 编排的主要优势包括:

  • 精简的基础设施
  • 可扩展性
  • 改善客户体验

精简的基础设施

API 编排可以简化复杂的数字化工作流,并简化数据流。这对于混合使用多种 API 类型的组织,或目前正在将旧版系统和应用程序集成到新计算环境的组织特别有帮助。

可扩展性

API 编排有助于促进数据流和 API 通信,从而创建更灵活的 API 生态系统。这种灵活性使环境更可扩展,并且在不中断现有系统的情况下更轻松地添加新的 API、应用程序和服务。

改善客户体验

API 编排可以提供统一的前端 API,用于与复杂的应用程序和服务网络进行交互。这为最终用户简化了流程,有助于流程更快地运行。在后端,实施编排层可提高请求处理效率,而无需员工干预。

相关解决方案
IBM webMethods Hybrid Integration

AI 驱动的自动化可在 API、应用程序、事件、文件和 B2B/EDI 方面扩展敏捷性。

深入了解 IBM® webMethods Hybrid Integration
集成软件和解决方案

通过 IBM 集成解决方案,连接应用程序和系统以快速安全地访问关键数据,从而释放业务潜力。

深入了解云集成解决方案
云咨询服务

利用 IBM 的云咨询服务解锁新功能并促进业务敏捷性。了解如何通过混合云战略和专家合作共同制定解决方案、加速数字化转型并优化绩效。

深入了解云服务
采取下一步行动

 

IBM webMethods Hybrid Integration 提供统一的接口和控制平面,适用于多种集成模式、应用程序、API、B2B 和文件,并能跨地域、环境和团队扩展敏捷性。

 

 

深入了解 IBM webMethods Hybrid Integration 了解实际应用