什么是APIOps?如何在这方面取得成功

345 阅读4分钟

本文比较了APIOps和其他X-Ops,以及为了使你的APIOps之旅取得成功,你可以做些什么。

自从DevOps这个词首次被引入以来,似乎新的 "Ops "相关术语就像技术趋势一样迅速涌现。比如说:

  • AIOPs:用人工智能增强各种IT流程并使之自动化。
  • MLOps:开发、部署和管理机器学习。
  • FinOps:优化和管理云计算成本。
  • DevSecOps:将安全纳入软件开发生命周期(SDLC)。
  • GitOps:使用Git管理和部署基础设施和应用程序(代码和配置)。

我打赌下一个与Ops相关的术语将是ChatGPT-Ops;-)。最后,最近几个月冒出来的一个OPs术语是APIOps,但它是什么意思,尤其是API并不新鲜,而且有很多不同的风格?

APIOps是一种利用GitOps和DevOps的原则来部署API的方法。与DevOps类似,APIOps促进了API变化的精简修改和自动化部署到生产中。就像DevOps一样,自动化是APIOps的一个关键支柱,但要在APIOps方面取得成功,你必须考虑的不仅仅是你的自动化管道。你需要采用与CALMS相关的原则来获得成功。

文化

你应该把你的 API当作一个产品。这意味着,你需要从技术方面着手。API不应该仅仅被看作是一个Jira任务,不应该仅仅是软件工程师的责任。你的API应该有一个产品经理来帮助你成功采用。你的产品将有一个路线图、一个生命周期和商业成功标准。

自动化

DevOps团队使用DORA指标(DevOps研究和评估)来衡量他们的绩效水平,并确定他们是否属于 "低绩效者 "或 "精英绩效者 "的范畴。采用DORA指标将使你深入了解你的CI/CD管道的交付性能,以使你的API 投入生产。DORA指标:

  • 部署频率:一个组织成功发布到生产的频率。
  • 更改的准备时间:一个承诺进入生产所需的时间。
  • 变更失败率:在生产中导致失败的部署的百分比。
  • 恢复服务的时间:一个组织需要多长时间才能从生产中的故障中恢复。

确保你在看DORA指标时,包括以API为中心的项目。例如,在生产中引入对API合同的破坏性改变,应该包括在 "改变失败率 "指标中,特别是如果这个改变没有得到管理。

精益

成功意味着采用精益的方法来消除浪费,并专注于快速和持续地为客户提供价值。如果一棵树倒在森林里,会发出声音吗?同样,如果一个API没有在生产中使用,有人会关心吗?不要急于实施你的API的服务;首先,确保成功标准是已知的。实施应该等到API被其潜在的消费者审查和批准之后。例如,消费者的早期反馈表明一个API将解决他们的用例/痛点。

措施

技术关键绩效指标是任何API项目的赌注;这将包括每秒交易量、错误率、延迟,以及跟踪你提供给消费者的API的SLA。此外,你需要包括更多的业务层面的目标,以进入衡量真正重要的东西的下一个层次。下面是一些可以跟踪的例子:

  • RoI(投资回报)关键绩效指标,例如,你的API是否有助于推动直接或间接的收入增长,或者如果你达到了API重用的涅槃,是否可以减少成本,等等。
  • 消费关键绩效指标: 你的API流量每月的增长趋势是什么,或者你的API是否有助于增长你的组织的合作伙伴的生态系统?
  • 参与度关键绩效指标:追踪你的API的NPS(净促进者得分),或者由于你的API是你的产品,你是否追踪保留率和流失率?

分享

无论你的API是以私人(在组织内部使用)、合作伙伴(由你的组织的合作伙伴使用)还是公共(由任何对API感兴趣的人使用)为目标,你必须有一个工具来分享你的API,并让你从你的API消费者那里获得反馈。这个工具可以是一个内部的API开发者门户网站,也可以是一个公共市场,消费者可以通过自助服务的方式发现和加入/注册你的API。同样重要的是,对于你的API的发展,你需要能够作为API消费者提供对API的反馈,以便它能够向适当的方向发展。

将上述DevOps原则应用于API生命周期,APIOps可以帮助企业改善合作,缩短上市时间,提供更好的客户体验,并最终取得更好的商业成果。