API 战略最佳实践

不同类型能源供应的块状岛屿相连的 3D 渲染图
Dan Nosowitz

Staff Writer, Automation & ITOps

IBM Think

API 战略最佳实践

应用程序编程接口 (API) 对现代组织至关重要,可用于连接和集成应用程序、系统和数据库,编排工作流,加速新应用程序和服务的开发和分发,为旧版系统创建现代化界面等等。平均每家企业在生产环境中拥有超过 613 个 API 端点

但是,如果 API 是临时创建、部署或集成的,组织不仅无法充分发挥其价值,甚至可能面临网络安全风险。全面的 API 战略可确保组织充分利用 API,让 API 服务于共同的业务计划。

辅以专家洞察分析的最新科技新闻

通过 Think 时事通讯,了解有关 AI、自动化、数据等方面最重要且最有趣的行业趋势。请参阅 IBM 隐私声明

谢谢!您已订阅。

您的订阅将以英语提供。每份时事通讯都包含取消订阅链接。您可以在此管理您的订阅或取消订阅。更多相关信息,请参阅我们的 IBM 隐私声明

什么是 API 战略?

API 战略是一项高层次计划,用以说明组织如何使用 API 实现业务目标。它为 API 设计、开发与部署、API 管理、安全性等确立了指导方针和政策。API 战略可确保组织的 API 不再孤立存在,而是协同服务于更大的业务需求与目标。

完善的 API 战略需统筹考虑组织的技术、安全与合规需求,同时助力构建可持续、可预测的集中化系统,为未来 API 实施奠定基础。

应用程序开发

开启旅程:云端企业应用程序开发

在本视频中,Peter Haumer 博士通过演示不同的组件和实践(包括 IBM Z Open Editor、IBM Wazi 和 Zowe),探讨了混合云环境中现代企业应用程序的开发现状。

API 战略为何重要?

简而言之,API 战略能帮助组织设计和管理更高效、更有价值且更安全的 API。API 功能广泛、多样且发展迅速,因此利益相关者需要制定明确的 API 战略,保障 API 项目的统一、高效与有效。

由于 API 类型繁多,使用方式更是多种多样,且在现代企业中发挥着关键作用,因此组织必须制定清晰全面的 API 战略以维护数字生态系统秩序,避免资源浪费和安全风险,确保其 API 能够尽可能多地创造业务价值。

健全的 API 战略可以改善开发人员的体验,提高兼容性和可扩展性,助力组织通过 API 实现经济效益等。API 战略也是实现数字化转型等整体目标的重要组成部分。

数字化转型

数字化转型旨在将数字技术全面融入组织架构。这是对流程、产品、运营和技术栈的彻底重构,以实现持续快速、客户驱动的创新。它不仅关乎特定流程的替换或服务升级,更是一场将技术置于组织核心地位的全面商业转型。

API 以及完善的 API 战略在推动这类转型中发挥着举足轻重的作用。在技术为核心的背景下,API 常用于连接企业内部的各项技术,以及将用户与企业应用程序、系统和服务连接起来。

API 使组织能够向更多用户提供更多服务(开辟新的收入来源),加快服务速度并改善整体用户体验,促进内部系统、数据库和应用程序之间的数据交换,连接部署在不同云供应商上的资源、实现旧版 IT 基础设施现代化等。

卓越的开发人员体验

强大的企业 API 战略包括完整的 API 文档(阅读更多关于组织如何 发现 API 的信息),以便清楚地解释组织的 API 的构建和使用方式。开发者门户网站可作为重要工具,使前端和后端 API 可供开发者使用、组织和发现。若缺乏完善的API战略,开发者将难以快速获取所需工具,进而拖慢生产实施进度,导致 API 冗余和资源浪费。

兼容性

API 必须持续监控和更新,跟上新软件及软件更新的步伐。完善的 API 战略通常包括完整的 API 生命周期规划:构思、API 设计、测试、实施、维护,以及必要时的停用。这一流程可保证 API 始终兼容最新软件版本,降低兼容性导致的崩溃或不可预测行为的风险。

旧版集成

技术的飞速演进意味着几乎所有组织都仍依赖某些旧版服务、软件或数据库系统。更新这些资源,通常既成本高昂又耗费时间。

随着现代化工作的不断推进,组织可借助 API 来实现这些系统和数据库接口的现代化。这使组织能够整合旧版资源,并充分挖掘其中宝贵数据的价值,而无需等待整个系统完成更新。

例如,某个数据库中存储的大量客户账户记录,可能已被公司其他部门弃用,此时可使用 API 让系统的其他部分与该数据库进行通信并请求信息,而无需大费周章地将所有数据迁移至新系统(或在迁移过程中进行相关操作)。

优化业务模式

API 战略能够确保 API 的设计、部署和记录方式,可引导企业达成既定目标,并契合更广泛的业务战略。API 战略旨在为 API 的开发与部署制定路线图,通过系统化规划构建更协同、更精简的业务模式,从而提升 API 的价值产出。

API 安全

API 常被用作攻击媒介,因此会带来必须解决的安全风险。一份详细阐述组织安全标准以及 API 防滥用措施的 API 战略就能降低这种风险。为此通常会使用 API 网关等工具以及身份验证或速率限制等技术。

速率限制用于降低暴力破解或分布式拒绝服务攻击(DDoS 攻击)的风险。速率限制可阻止或丢弃造成流量风险的请求,防止系统被请求洪流冲垮。还有一些自动化功能可以实现更精确的控制。例如,组织可以对某些请求活动频繁且被标记为可疑的 IP 地址设置速率限制。

身份验证技术也被纳入 API 安全战略,以确保只有安全且获批准的请求才会得到处理。OAuth(开放授权)协议使用访问令牌授权用户访问之前已获批准的数据或服务,而无需重新登录。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 协议、架构风格和语言种类繁多,且各有优缺点。其中包括 1:

RPC

远程过程调用 (RPC) 协议使某个程序能够像本地请求服务一样,使用几乎相同的代码向另一台计算机上的另一个程序请求服务。

RPC 提供了操作系统中使用的高级通信范式。它假定存在底层传输协议,如传输控制协议/互联网协议 (TCP/IP) 或用户数据报协议 (UDP),用于在通信程序之间传输消息数据。

RPC 实现了逻辑上的客户端到服务器通信系统,专为支持网络应用程序而设计。2

RPC 协议类型包括 XML-RPC、JSON-RPC 和 gRPC。

REST

表述性状态转移 (REST) 是一组 Web API 架构原则。REST API(又称 RESTful API)是遵循特定 REST 架构约束的 API。REST API 使用 GET、PUT、HEAD 和 DELETE 等 HTTP 请求与资源交互。REST 以资源形式提供数据,每个资源由唯一的 URI 表示。客户端通过提供资源的 URI 来请求资源。

REST API 是无状态的,它们不会在请求之间保存客户端数据。 使用 SOAP 协议构建 RESTful API 是可能的,但从业者通常将这两个标准视为相互竞争的规范。

GraphQL

GraphQL 是一种开源查询语言和服务器端运行时,它使客户端能够精准配置其所需的资源。与通常使用多个端点来获取数据并执行网络操作的 REST 不同,GraphQL API 仅使用单个 GraphQL 端点,便可在单个请求的一个往返行程中,为客户端提供精确、全面的数据响应,从而消除数据过度获取和获取不足的问题。 3

然而,GraphQL 可能会引入比简单应用程序所需更多的复杂性。

SOAP

简单对象访问协议 (SOAP) 是一种基于 XML 的轻量级消息传输协议规范,使端点能够通过包括 SMTP(简单邮件传输协议)和 HTTP(超文本传输协议)在内的一系列通信协议发送和接收数据。SOAP 具有独立性,这使得 SOAP 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。

相关解决方案
IBM API Connect

无缝开发、管理和保护所有类型的应用程序编程接口 (API) 并实现社交化,而无论这些 API 位于何处。

探索 API Connect
API 管理

加快 API 主导的数字化转型,推动建设全新的参与模式和通道。

探索 API 管理
使用 IBM API Connect 进行 API 开发

使用 IBM API Connect,轻松构建、标准化和保护新的和现有的 API。

创建新的 API
采取下一步行动

IBM API Connect 支持所有现代应用程序编程接口 (API) 类型,同时还增强了安全性和治理。生成式 AI 功能可自动执行手动任务,从而节省时间并帮助确保质量。

探索 API Connect 探索产品教程