2022-02-18 13:30 浏览量:1004
近几年来,在数据管理、API 服务等方面,全球企业都在致力于创建统一的系统和平台。我们转载了 Eric Broda 发表在 Medium.com 的博客,本文将从 API 谈起,分享企业 API 平台将如何改变 API 的交付方式,希望对大家有所启发。
市场需要 API 进行快速且灵活地交付。优步(Uber)和爱彼迎(AirBnB)通过在企业内部推广“平台”思维,实现了 API 交付的去中心化和平民化,将 API 开发的敏捷性、速度和效率提升到了全新的水平。
#01
企业平台将改变 API 的交付
API 为企业的现代化转型奠定了基础。API 不仅连接了内部应用程序、合作伙伴和客户,还是将新产品、版本和功能更快推向市场的基础。
但今天集中式的 API 交付架构过程冗长且繁琐,影响了 API 开发的敏捷性、速度和成本。
越来越多的企业纷纷转向API 平台。API 平台能将生产者和消费者汇聚在一起,并将提供相关基础设施和设定规则,最终将带来 API 交付的变革。
本文将介绍如何将这类平台用于 API 交付的去中心化和平民化,提升 API 开发的敏捷性、速度和效率。
#02
集中式的 API 交付模式的痛点
在大多数企业, API 未能发挥应有的作用。世界级领先的全球管理咨询公司麦肯锡(McKinsey)指出:多数情况下,还没有周全的战略就去匆忙构建 API ,系统混乱,冗余、维护不到位,透明度不高,这抵消了 API 可能带来的诸多优势。
带来的结果就是,这些公司随后只能再花数年的时间通过随机增加 API 的方式来改造和替换这个冗杂的超级系统,但其实并没什么实质的进展。
企业最初采用集中式的 API 交付形式主要是为了笼络行业难得的人才。这种情况下,集中式的 API 开发团队将负责整个 API 交付周期,覆盖从规范定义、到开发,再到部署和运维的各个环节。但这种集中式的 API 交付模式存在一些问题。
首先,集中式的 API 团队采用共享服务的交付模式,这种模式显然具有垄断性质,因为人们只能通过这些集中式的 API 团队获取 API。由于没有其他选择,API 的消费者,例如业务部门的开发人员,只能被动接受集中式 API 团队所提供的 API。
其次,这种集中式的 API 垄断程序繁杂,对于那些需要敏捷响应的关键反馈,集中式的 API 交付团队反而不能及时响应。同样,这种繁琐程序也割裂了共享服务与 API 消费者之间的联系,二者之间的互惠互让本可以进一步促进创新。
最后,为了实现治理或制定各种规则,共享服务垄断会不断加入各种新的流程,繁琐的开发程序就会成为一种常态。集中式 API 交付在设计时更多考虑的是成本、稳定性和复用性,而非开发速度、敏捷性或灵活性。
显然,集中式 API 交付模式已经难以应对当今技术、市场的快速变化以及消费者的严格要求。
在这方面,API 平台将大有可为。多数情况下,API 平台是指公司和外部的生态系统。但是,API 平台这一关键概念也可以应用于公司内部,以创建“企业级 API 平台”。这类平台将从根本上改变 API 的交付。
#03
平台将创造更大价值的生态系统
平台创造的生态系统包含三大角色:生产者创建产品,消费者购买产品,平台提供基础设施和安全性保障,使生产者和消费者能够轻松找到对方,并更有效地进行交互和交易。这种商业模式的创新已推动整个行业的变革,如 Uber、Airbnb。
平台具备多重优势:
选择 Choice:通过托管多个生产者,平台使客户能在多个产品之间进行选择;
竞争 Competition:多个生产者的存在将引入竞争,最终带来更好的产品;
网络效应 Network effects:良性的反馈环路将产生网络效应:更多的消费者将选择拥有更多生产者的平台,更多生产者也将汇聚到消费者更多的平台。
安全 Safety:平台提供了“参与规则”或治理,从而能安全可靠地进行交互和交易。
#04
企业级平台在企业内部创建生态系统
企业级平台将这一概念主要应用于内部而非外部受众。
图 1 API 平台对比企业 API 平台
企业级平台与面向外部的平台有相似的特征:
首先,企业级平台仍然由创建产品的生产者、购买产品的消费者构成,并将提供基础设施和安全性保证,因此能轻松在生产者和消费者之间实现反馈,使之能安全地交互和交易。
其次,像外部平台一样,企业级平台有多个内部生产者,因此避免了生产者垄断的出现。多个生产商之间相互竞争,让消费者有了更多的选择。
第三,企业级平台提供内部工具和实用程序(如内部市场),生产者可以轻松地与消费者进行互动和交易(消费服务)。
最后,企业级平台还创建了轻量级的自动化治理流程,该流程建立起“参与规则”,可以轻松验证是否遵循了复用性、安全性、可操作性和可观察性等企业所关心的各项原则。
#05
企业 API 平台将改变 API 的交付方式
简言之,企业 API 平台就是为交付 API 而设计的企业平台。生产者是 API 的开发者;消费者是这些 API 的最终用户。API 平台就像是基础设施和“安全围栏”,让生产者和消费者能够找到 API,并通过交互而最终交付 API 。
图2 集中式 API 交付模式与企业 API 平台
现在,让我们回到传统的集中式 API 交付模式。更具体地说,当企业 API 平台取代这些集中式 API 交付模式时,会带来哪些变化和好处?
首先,企业 API 平台的功能使所有业务组内的所有生产者都可以根据他们的特定需求,与任何团队、在任何规模上,按计划开发 API 。集中式 API 的交付“垄断”事实上被多个生产者取代,各个生产者更接近其消费者,从而提高了开发的敏捷性和响应性。
其次,产生竞争,多个生产者使消费者有了选择的权力,提高了灵活性和开发速度。
第三,借助“市场”和社交功能(如点赞)等工具,企业 API 平台用充满活力的反馈机制取代了集中式 API 交付模式中繁琐的交互机制,更有益于推动创新。
最后,通过保障生产者与消费者之间交互、交易和治理的安全性与可靠性,企业 API 平台将能推动 API 标准的正式确立(例如 Open API 规范和标准);通过明确的合约、执行(通用组件)和自动化的 DevOps 流程,企业 API 平台也将解决安全性、可操作性和可观测性等企业关注的问题,提高交付效率和效果。
企业 API 平台真正改变了 API 交付,并为旧的集中式 API 交付模式提供了一个令人信服、实用且有效的替代方案。
#06
构建企业级 API 平台
那么,什么是企业级 API 平台?
首先,很显然它将为 API 的开发提供安全、易用的基础设施。通过相关工具、设施和标准解决横切关注点带来的问题,API 平台为企业级 API 亟待解决的一些问题搭建了“安全围栏”,包括安全性(OAUTH2、JWT、TLS)、可操作性(日志记录、告警)和可观测性(跟踪、监控、健康状况检查)。
其次,企业级 API 平台将提供出色的开发者体验。开发者之所以认可 API 平台,是因为这些 API 或微服务框架提供了一些开箱可用的功能,这些功能透明、有效、全面、且“免费”,开发者可以快速上手。还有新工具 “市场”的存在,使他们可以轻松找到并使用 API。
此外,企业级 API 平台还将提供一些“社交”指标,比如“点赞”和使用情况统计,在 API 生产者与消费者之间建立良性的循环反馈回路,从而快速推动 API 并推动创新。
API 平台还将提供一些能提高开发者(生产者)工作效率的“加速器”,例如多语言支持(通过精妙地使用微服务代理)或通过基础设施即代码的模板简化打包和部署。
最后,API 平台还将提供“参与规则”或治理规范,使遵守企业标准变得更容易。通过预制的横切关注点保证了开发者打造的 API 符合相关规范。“市场”的存在使消费者可以轻松查看使用文档,以确保能正确地使用 API 。此外,借助工具实现 DevOps 流程的自动化,这样那些符合企业标准的 API 将被自动“认证”,省去了之前人工审查的繁琐流程。
API 平台治理流程解决了两个不同但相关的需求:平台演进和平台消费。API 平台的演进由利益相关方团队管理,该团队对 API 平台及其演进的孵化(及资金)负责,以确保提供正确的功能和“安全围栏”。该团队还应保证 API 平台构建的功能与需要达成的业务产出明确关联。开发者对 API 平台的使用由另一个获得企业授权的团队管理(例如企业架构部门),除保证 API 的开发外还应鼓励复用。
由于我们的企业级 API 平台鼓励广泛的联合开发(多个“生产者”),因此该平台应与联合 API 治理模式相匹配:从各个项目、团队、区域业务部门,一直到“企业”,都应能证明 API 被正确的开发,同样还应能及时发现开发偏离平台标准或“安全围栏”的情况,例如 API 没能解决横切关注点的问题,或 API 没能有效地解决业务需求,例如没有考虑复用性等。
#07
结论
企业级 API 平台的前景广阔:它使企业能够自由地驱动加速创新、提升敏捷性,这正是在当今市场所需要的。企业级 API 平台支持建立真正联合的 API 交付模式,该模式将不再受繁琐程序的约束,任何企业或团队都能随时根据他们的项目、团队或业务线的需求进行 API 开发。旧的集中式 API 交付模式已经过时,它们的时代也将过去,而企业级 API 平台的前景则会非常广阔。
本文转载自 Geek Culture,译自 Medium.com,作者 Eric Broda,原文链接为:https://medium.com/geekculture/rethinking-the-api-platform-7a7642c48bfa。