一文读懂什么是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设计,继续验证
任何设计良好的API都将在其他API中重复出现。这可以很容易地封装成最佳实践模式,既可以在API的结构层面(名词资源),也可以在方法层面(动词)上进行。因此,当API开发人员进行设计过程时,重要的是他们能够发现和共享可重复的模式。
API实施
API实施是企业数字化转型关键环节。实现成百上千个API与后端以及彼此之间的连接至关重要。这必须以系统的方式进行(而不是点对点编码)。
实施阶段包括构建和测试两个步骤。
系统化的构建方法可确保API开发人员能够轻松获得以下架构模式:
-
编排
-
转换
-
路由
-
数据映射
-
系统间连接
一旦API构建完成,它将经过多轮API测试,以确保其按预期工作。如果测试没有问题,则可以进入下一个生命周期阶段,但大多数情况下,API将在进入部署阶段之前经历多轮测试和调整。测试自动化工具在这里至关重要,因为它集成了持续交付和部署的DevOps流程。
API管理
在运行时通过应用策略来确保应用程序构建块遵循安全和架构治理的最佳实践至关重要。通过API管理器监控所有流量同样重要,因为只需一个薄弱环节就可能让整个系统崩溃。
在这个生命周期阶段中,包括以下步骤:
-
保障安全
-
部署
-
监控
-
故障排查
-
管理
此外,这些API需要能够被发现以便用于其他目的。能够适当地发布这些API,以便消费开发人员可以轻松找到、研究并理解它们,可能会决定整个项目的成败。
在API生命周期管理中,谁负责什么?
这取决于您组织的成熟度,可能是一个人负责所有这些职责,也可能是多个人负责特定的领域。API生命周期中的每个阶段都提供了特定的价值,从而确保应用程序构建块能够提供所需的业务成果。
在规模较小的组织中,API经理会监督整个API生命周期。而在更强大的组织中,API分析师和管理员将负责设计,DevOps人员将参与进来,集成开发人员和应用网络架构师将处理实施工作,而API管理员将负责管理工作。
应用程序网络中的API管理
在当今竞争激烈的市场环境中,企业需要迅速做出决策。无论是新的营销活动、产品改进、合作伙伴门户还是员工生产力应用程序,企业都在争夺速度。他们需要灵活性来创建有目的、敏捷的应用程序构建块,这些构建块可以通过设计精良、管理良好的API轻松组合在一起,以快速创建所需的内容。
将这些构建块连接起来,就会形成一个可互换功能的网络——一个由子功能或应用程序组成的网络,称为应用网络。通过创建这些构建块,并为按需快速组合它们提供灵活性,可以为组织提供未来保障并防范不确定性。
应用网络由应用构建块组成。这些构建块具有多个元素,并且必须分离每个元素之间的关注点。API接口、API实现和API管理方面都有各自独特的生命周期需要遵循。这个构建块本身应该被视为一个产品,因为这些特性也是优秀产品所共有的。
要了解更多关于在API管理的信息,请关注我们最新的API博客文章。