Jump to section

什么是 API 管理?

复制 URL

应用编程接口(API)可跨企业和云在应用和数据之间实现连接,而 API 管理就是指分配、控制和分析这些 API 的过程。API 是两款应用实时共享数据的一种方式。这种通信方式通过一系列工具、定义和协议来实现应用软件和服务之间的集成

API 管理的目标,是让创建 API 或使用他人 API 的机构能够监控其 API 活动,确保满足使用 API 的开发人员和应用的需求。借助 API 管理工具,企业可以共享 API 配置、实施访问控制、收集并分析使用情况统计信息,还可以在其网络和 API 消费方之间实施安全策略。

许多企业都实施了各种 API 管理策略,力争及时响应快速变化的客户需求。在大多数情况下,这些企业会采用微服务架构,以通过加快软件开发速度来满足需求。

基于 HTTP 的 API 已成为微服务架构之间同步交互的首选方式,REST API 则适用于 API 密钥、每客户端节流、请求验证和私有 API 端点。此类 API 是将所有微服务连接在一起的粘合剂。管理好此类 API,企业就能确保 API 的使用符合公司策略,并根据实际情况,以相应的安全级别进行监管(某些服务可能需要不同的安全策略)。

让您的 API 团队为成功做好准备

API 管理主要是集中控制 API 项目,包括分析、访问控制、实现盈利、开发人员工作流程等。借助 API 管理解决方案(如红帽 3scale API 管理),您就能更可靠、灵活、高质量和迅速地完成这一系列工作。要实现这些目标,并确保公共和内部 API 都可用且安全,API 管理解决方案应至少提供访问控制、速率限制和使用策略。大多数 API 管理解决方案通常还包括以下功能:

  • 开发人员门户。 开发人员门户是 API 管理中常见的典型工具。开发人员门户通常提供 API 文档以及开发人员入职流程,如注册和帐户管理。

  • API 网关。API 网关是所有客户端的单一入口点。该网关还通过使用策略确定客户端与 API 的交互方式。

  • API 生命周期管理。 从设计、实施一直到停用,API 的整个生命周期都应得到充分管理。红帽 3scale API 管理是业内领先的 API 生命周期管理工具。
  • 分析。 了解 API 的使用情况很重要,即,哪个消费方或应用调用了哪个 API 以及调用频率如何。还需知道有多少个 API 出现故障,以及故障的原因。

  • 支持 API 货币化。 通过使用合同,让访问 API 背后的微服务这一行为产生效益。API 管理可让您根据指标定义使用合同,例如 API 调用的数量。消费者可以采用分段和差异化方式访问分层,并且不同段可以享受相应的服务质量。

API 的设计过程中充分考虑这些功能,可让 API 使用自我管理组件或云组件,进行流量控制、安全防护和访问权限政策执行。通过这个旨在提升性能、加强访问控制、为未来发展最好准备的基础架构平台,您就能够轻松地共享、保护、分发、控制这些精心设计的 API,实现盈利。

微服务和 API 是云原生应用开发的基础,这种方法旨在通过快速开发创新应用组件来满足新的业务需求。但这种方法并不是完全之策。

将较大的系统拆分为小的组件,是创造微服务的关键技术挑战。API 可让这些较小的组件相互连接并与数据源连接。

而如何协调许多频繁变化的微服务,是微服务架构带来的另一个挑战。借助服务发现,这一过程就变得简单许多。API 管理服务可提供必要的发现机制,确保找到可用的微服务,并通过开发人员门户共享有关如何使用这些微服务的文档。

微服务需要一种综合的安全防护方法。安全机制根据 API 的类型而不同:面向外部的服务所需的安全机制与面向内部的服务不同。对于不太关键的 API,使用 API 密钥进行简单保护通常就足够了。而对于外部或关键 API,就需要更安全的方法,如 OAuth。

API 管理平台由几个关键部分组成,这些部分提供端到端服务,可促进应用的集成、管理、安全性以及对 API 的监控。

API 网关会对传入的所有客户端请求进行拦截,然后通过 API 管理系统将请求发出以连接后端服务。

开发人员门户是一个基于 Web 的仪表板,开发人员可在此自助访问 API 文档、代码示例、软件开发套件(SDK)以及其他面向 API 开发人员的资源。

API 管理的部分作用是为整个 API 生命周期的管理和监控提供了一种简便的方法。API 生命周期管理工具包含的功能可通过符合业界标准的规范设计 API、对 API 进行版本控制、管理变更控制流程以及跟踪 API 使用情况及性能随时间的变化。

API 管理平台包含安全和访问控制组件,用于实施身份验证、授权和安全策略,以保护 API 和敏感数据免遭未经授权的访问和滥用。其中包含用于身份管理和访问管理的 OAuth 和 OpenID 等功能。

完整的 API 管理平台还包含分析和监控工具,以提供关于 API 使用情况、性能和行为的洞见。这些工具可实时监控 API 流量、响应时间、错误率和常用端点。还可提供历史数据和趋势分析,以识别性能瓶颈、优化对 API 的使用并衡量 API 对业务目标的影响。

成功的 API 管理解决方案还应支持生态系统的扩展,以与外部的其他系统或合作伙伴集成,或者与内部企业网络中的系统集成。 

首先思考以下几个关键问题:

  1. 如何控制对 API 的访问?
  2. 如何获取指标和处理警报?
  3. 如何管理使用高峰?
  4. 谁负责 API 的正常运行时间?
  5. 我们如何看待不受欢迎的 API 使用情况?

如果不衡量我们努力的效果,就无法评估我们的管理是否成功。通过分析,我们可以掌握有关 API 活动的数据,但我们仍必须定义到底什么是成功。在您企业内定义成功时,请考虑以下 5 个 API 的关键性能目标:

  1. 可靠性。 可靠性是指 API 对开发人员是否方便可用。停机时间是衡量可靠性的有用指标。API 是否随时可用?另一个指标是配额,它定义了开发人员在特定时间范围内可以调用多少次 API。配额可以保护 API 不被滥用,使管理更具可预测性。有些 API 提供商都是根据配额来制定业务模式和定价。
  2. 灵活性。 灵活性是指开发人员在采用 API 时是否拥有多种选项。API 的灵活性更大,则企业管理 API 需要投入的精力(和成本)更多。
  3. 质量。 质量是指 API 行为是否符合开发人员的期望。这是一种衡量开发人员对 API 满意度的方法。
  4. 速度。速度可以通过访问延迟吞吐量来衡量。限流或缓存等技术都可能会影响速度。
  5. 成本。 衡量成本的目的是为开发人员提供最具性价比的支持。所有其他 4 个目标都多少有助于实现成本目标。

红帽® OpenShift® 是业内领先的混合云应用平台,它基于 Kubernetes,整合了多项经过测试且深受信赖的服务,可减少开发、现代化、部署、运行和管理应用等过程中产生的摩擦。无论是在本地、混合云、多云环境中部署,还是在广受欢迎的云服务上原生部署,红帽 OpenShift 都能为要求最苛刻的工作负载(包括 AI/ML、边缘工作负载)提供支持,且可通过我们庞大的技术合作伙伴生态系统实现部署和生命周期管理的自动化。

红帽® OpenShift® 服务网格可基于开源项目 Istio 以统一的方式连接、管理和观察基于微服务的应用。它旨在针对基于微服务的应用架构提供更高效的端到端开发人员体验。这有助于将开发人员团队从针对应用和业务逻辑实施定制网络服务的复杂任务中解放出来。

红帽应用基础为企业提供了一系列全面的工具和技术,帮助其在构建、部署和运维应用的同时兼顾安全性和跨混合云的可扩展性。借助红帽应用基础,团队可以在整个生命周期内共享、保护、分配和控制 API。主要功能包括集中化管理、实施访问控制、限制速率、分析以及生成使用情况报告。

扩展阅读

文章

什么是 API?

应用编程接口(API)是一组用于构建和集成应用软件的定义和协议。

文章

API 网关能做什么?

API 网关是位于客户端与后端服务集之间的应用编程接口(API)管理工具。

文章

为何选择红帽 API?

我们的 API 解决方案重点关注可复用性、IT 敏捷性以及有助于测量、监控和扩展的管理接口。