API 生态系统是指一个由相互连接的应用程序编程接口 (API) 及所有相关元素构成的网络。 这些元素包括构建 API 的团队、使用 API 的开发者、依赖 API 进行数据交换的应用、数据库和平台、开发者门户,以及促进安全、有价值集成的安全与治理结构。
API 生态系统的关键组成部分大致可分为三类:技术(API 及相关基础设施)、人员(提供者、消费者和社区)以及治理(标准、政策、支持系统和资产)。
API 生态系统的技术基础设施包含多个不同组成部分,它们如蛛网般以多种方式相互连接。API 本身是连接网络各个部分的径向线,而 API Gateway、数据库、应用和服务及其他基础设施则构成网络的交汇点、枢纽和框架。
API 是一套规则或协议,使软件程序能够相互通信,以交换数据、特性和功能。API 使应用所有者能够简单、安全地向内部和外部消费者提供其数据和服务。
如今,API 对企业用户变得日益关键;企业平均在生产环境中拥有超过 600 个 API 端点 ,并且有整个企业(包括支付处理公司、电子邮件数据增强公司和金融服务公司)从 API 起家。
API Gateway 是一个软件层,为客户端(如网页或移动应用)访问多个后端服务提供单一入口点,同时管理客户端/服务器交互。
API Gateway 接收 API 调用(有时称为 API 请求),并根据请求的性质将其路由到一个或多个后端服务。然后,网关将请求的数据汇总,并通过单个响应返回给客户端。网关使客户端能够通过一次调用查询多个资源,而无需通过多次调用查询多个端点。
例如,在医疗保健系统中编排服务的 API Gateway,可以使面向用户的应用通过一次 API 调用,从多个资源(如患者的病历、支付历史和当前日程安排)中拉取数据。
API Gateway 还集中处理其他关键任务,例如:
数据库是 API 生态系统不可分割的组成部分——它们存储应用运行所需的原始数据。API 充当中介,使应用能够以稳定、安全的方式与数据库交互。API 提供了接口,让应用能在数据库上执行创建、读取、更新或删除 (CRUD) 等操作。
API 还通过身份验证和访问权限验证提供一层安全保障,确保资源只有获得授权的客户端才能访问。同时,API 为系统带来互操作性,使以不同编程语言编写或构建于不同平台之上的应用能够访问相同的数据库。
应用是整个 API 生态系统的技术前端;无论是数字用户还是人类用户,实际交互的对象是应用(如移动应用、网页应用或桌面软件),而非 API 本身。
在应用内,用户可能选择一个需要应用从外部来源获取数据或服务才能完成的操作。这一数据交换通过 API 完成。请求(通常称为 API 调用或查询)被发送至 API,API 将其路由至负责所请求资源的后端服务。随后请求的数据通过 API 返回给客户端。
持续集成/持续交付 (CI/CD) 管道是 API 生态系统的一部分,因为这类管道常用于 API 的开发、部署和更新。
CI/CD 管道是一种工作流,可自动化代码编写、集成、测试和部署的过程。开发者可以独立编写代码,使用 Git 等工具跟踪变更,代码在管道中自动流转,进行测试和验证。验证后的代码随后被集成到测试环境或 GitHub 等代码库中。CI/CD 管道是一种缩短 API 或软件开发时间、降低成本、及早发现错误并改善团队协作的方法。
CI/CD 管道对最终用户不可见;它是一种将代码从开发推进到部署,并通过定期更新持续改进软件和 API 的常用方法。
开发者门户是一个中心平台,汇集了开发者理解、使用、集成和优化 API 所需的一切内容。它是整个 API 生态系统的基本组成部分。开发者门户通常包含以下大部分或全部内容:
API 管理平台类似于面向外部的开发者门户的内部版本。API 管理系统为负责 API 监督的团队提供控制功能,包含在 API 整个生命周期中进行部署和下线、管理流量、跟踪错误、执行安全和治理策略以及(通常)管理计费和订阅的工具。
API 生态系统中的人员要素也可分为三组:
API 提供者是负责创建和发布作为生态系统核心的 API 的人员与团队。他们可能包括:
这些是使用 API 来集成应用与系统、构建新产品和服务的开发者。API 消费者是生态系统中至关重要的一部分——毕竟,API 正是为这一群体设计的。
消费者可以是内部的(属于提供 API 的同一组织)、具有有限访问权限的外部人员,或拥有完全访问权限的公开用户。API 的设计和文档可能会根据目标用户的不同而有所区别。
例如,对于公开 API,提供组织可能倾向于提供更具自解释性的用户体验,减少大量的故障排查和支持需求。
尤其是对于公开 API 而言,社区——一个由消费者及其他利益相关方组成的更广泛的群体——可以是整个 API 生态系统中至关重要的一部分。社区通常包括内部开发者、开源贡献者和爱好者、业务合作伙伴,以及依赖 API 访问数据或服务的应用的日常用户。社区可以通过以下方式在 API 的改进和创新中发挥作用:
API 治理是指指导组织如何开发、部署和使用其 API 的标准、政策和实践。建立 API 治理的目标是促进一致性、可靠性、安全性和效率。
API 治理可能包括风格指南、安全策略、命名规范、版本控制策略、质量标准、事件与灾难响应政策等。对于包括医疗保健在内的许多行业,治理还包括法律合规性决策,例如 HIPAA 要求或其他行业或地区特定法规。
成功的 API 生态系统能够为企业和开发者带来显著优势:
无缝开发、管理和保护所有类型的应用程序编程接口 (API) 并实现社交化,而无论这些 API 位于何处。
借助集成平台软件实现无缝连接与自动化,赋能您的企业。
在智能体 AI 时代,释放混合云的全部潜能。