application程序编程接口 (API) 非常流行。
虽然 API 并不是新鲜事物,但最近出现的一些现象(例如新冠肺炎期间数字化转型的加速、软件集成的增强以及为云重新平台化遗留应用程序的努力)导致了API 的不断蔓延——影响了组织为在现代数字经济中取得成功而做出的管理、安全甚至架构选择。
从本质上来说,API 可以代表机器的崛起。 只不过,幸运的是,人类仍然可以控制它们的建造、管理和安全(至少目前如此)。
从根本上讲,用“API 语言”来表达,消费者通常通过由各种标准、模式和规范组成的统一接口向生产者发送查询或请求。
例如,国家气象局(生产者)包含每日天气数据。 您手机上的天气应用程序(消费者)通过WeatherKit REST API调用(或者更具体地说是查询)该系统,然后通过天气应用程序用户界面呈现数据。 虽然这是一个拥有数百万用户的流行应用程序的简单示例,但值得注意的是,机器对机器通信占据了现代数字体验流量的最大份额,并且它由 API 提供支持。
API 具有许多可以转化为商业价值的技术优势:
技术优势 | 商业价值 |
---|---|
抽象 Web 应用程序的底层实现。 | 组织可以快速部署移动应用程序和基于微服务的架构。 |
指定类型,以便开发人员可以通过工具实现 API 消费者。 | 领导者可以优化开发流程,以加快产品上市时间。 |
定义语义/行为来模拟一致且可预测的信息交换。 | 合作伙伴可以开发第三方集成并将其货币化。 |
在谈到 API 的实现时,有许多需要考虑的事项。 具体而言,关于建模、版本控制和契约测试,有助于解耦依赖关系并确保设计、构建和维护期间的互操作性。
考虑 | 描述 | 益处 |
---|---|---|
造型 | 表示和构建信息交换的语义或行为。 | 简化分布式架构的管理。 |
版本控制 | 整个 API 生命周期的发布和维护的治理策略。 | 最大程度的可用性和向后兼容性。 |
合同测试 | 定义消费者和生产者之间的互动和预期反应。 | 与第三方业务集成的确定性交互。 |
构建、管理和保护 API 的方法没有对错之分。事实上,当 API 开始激增时,就有必要对 API 的形状和结构进行标准化,以便大规模使用它们。 输入OpenAPI计划和由此产生的 OpenAPI 规范 (OAS)。 Swagger是 OpenAPI 规范的原始参考实现,现在大多数工具都已集中使用 OpenAPI,而 OpenAPI 仍然保持着其 swagger(哈!)
事实上,可以使用多种标准、模式和规范来构建 API。 例如, RESTful表示、 gRPC服务和GraphQL模式的连接。
执行 | 概述 | 好处 | 何时使用 |
---|---|---|---|
![]() |
REST 是迄今为止基于 API 的架构中部署最广泛的实现。 |
|
|
![]() |
GraphQL 是一种用于 API 的开源数据查询和操作语言,以及使用现有数据执行这些查询的运行时(由 Facebook 开发,现为 Linux 基金会的一部分)。 |
|
|
![]() |
gRPC 是一个现代、开源、高性能的远程过程调用 (RPC) 框架,由 Linux 基金会管理。 |
|
|
通过对 API 基础知识的了解,我们将在后续文章中探讨如何构建、管理和保护 API 架构,然后通过为云重新构建旧式应用程序平台将所有内容整合在一起。
想要进步吗? 立即下载电子书: