BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

构建并管理高效API市场的关键步骤

| 作者 Mifan Careem 关注 0 他的粉丝 ,译者 谢丽 关注 5 他的粉丝 发布于 2017年11月24日. 估计阅读时间: 14 分钟 | QCon北京2018全面起航:开启与Netflix、微软、ThoughtWorks等公司的技术创新之路!

亲爱的读者:我们最近添加了一些个人消息定制功能,您只需选择感兴趣的技术主题,即可获取重要资讯的邮件和网页通知

本文要点

  • 一般而言,API市场包含几个部分。在典型场景中,生产者首先发布API,然后通过API开发者门户分类展示。
  • API管理系统为API市场提供了锚点,使其可以有效运作,但是,实现一个成功的市场需要使用一种更先进的方法来实现API管理系统的某些方面,最值得注意的是API开发者门户和分析。
  • 第一要务是实现有效的API开发者门户。在API市场中,开发者门户必须为企业希望吸引的社区开发者提供直观的体验——既包括专业的软件开发人员和企业高级用户,也包括长尾开发者。
  • 除了创建门户外,企业还要在市场中引入促进API重用的激励措施,既包括金钱方面的,也有非经济方面的。分析在支持API货币化方面扮演了重要角色。
  • 在管理API市场时,企业需要控制谁可以在哪里发布API,而且要确保发布的API符合组织的标准,比如URL模式、命名约定和访问控制规则。

现在,企业正在跨行业寻找可以实现业务数字化的方式,通过外部API扩展他们的服务。然而,为了从API编程获益,组织需要超越基本的API管理,创建一个API市场、一种致力于连接生产者和消费者的特殊类型的平台业务模型。随着越来越多的公司转向业务平台寻求竞争优势,API市场将平台业务模型的好处带给了API管理。

就其本身而言,API市场解决的通常不只是开发者门户及API管理的其他技术方面的问题,还包括为保证API达成初衷——促进API的消费和使用——而产生的企业和人两个方面的问题。

在本文接下来的部分,我们将探讨在API生态系统中发挥作用的技术和业务事项,以及构建并管理高效API市场的关键步骤。

API管理系统是API市场的锚点

通常,API有多个部分组成。在典型的场景中,发布者首先发布API,然后通过API开发者门户分类展示。这促使API的消费者直接或间接(例如,通过系统API)地访问API开发者门户,查找、发现和利用它们。开发者门户分门别类地展示不同类型的API。对于特定的API,用户可以测试、订阅它们。图1说明了API市场各组件的相互关系。

API管理系统提供了API市场管理的锚点,使它可以有效地运转。它通常包含五个核心组件:

  • API网关是API的运行时和策略执行点,执行流量控制、速率限制和安全策略。
  • API安全可能会由网关的基础层提供,也可以通过集成身份访问管理(IAM)解决方案来实现。
  • API开发者门户是一个服务目录,为应用程序开发者提供一个集中的位置,发现、订阅和测试API。
  • API发布门户提供了基于后端服务设计API的功能。
  • API分析提供了API使用情况快照,为API货币化提供了数据。

实现一个成功的市场需要使用一种更先进的方法来实现API管理系统的某些方面,最值得注意的是API开发者门户和分析。同时,组织实践在建立高效的市场方面也发挥着重要的作用。下面,我们将探讨构建强大社区推动API使用的五个基本要素,旨在为企业吸引更多的用户,增加收入来源,提高忠诚度。

图1:API市场的关键组件

API开发者门户

第一个要素是实现一个高效的API开发者门户。在API市场中,开发者门户必须为企业希望吸引的社区开发者提供直观的体验——既包括专业的软件开发人员和企业高级用户,也包括长尾开发者。这里的长尾开发者是指那些不会立即成为API提供商企业客户或者合作伙伴的开发人员;更准确地说,是一群查阅API文档围绕API构建App的独立开发者(他们可能隶属于某个更大的组织,因此是潜在的客户)。API提供商既可以选择将所有的资源和文档隐藏在一个受保护的登录页面之后,也可以更透明,把所有这些资源和文档公开。消费者可能会直接或间接(例如,通过机器到机器的连接)地访问开发者门户,查找、发现和利用API。开发者门户分门别类地展示不同类型的API。用户可以测试和订阅特定的API。

有个不错的例子,我们的一个客户,一家大型的电信服务提供商,构建了一个API驱动的应用程序/服务创建生态系统,可以快捷轻松地创建出运行在公司移动通信平台上的数字化OTT服务。为开发人员和非开发人员分别提供单独的门户可以为用户提供直观的体验,只要几分钟,用户就可以仔细阅读使用条款、注册并开始使用电信公司提供的服务。

由专家和“社区”开发人员为该平台创建的服务被发布到电信公司的应用商店里。门户定制的方法让该电信企业可以把来自各类开发人员、初创企业及政府机构的App提供给小型零售企业、学校、教会和慈善机构的非开发人员。单是在头18个月里,就有超过2500名App创建者发布了3300多个基于电信公司API的App和服务。

在传统的API管理环境中,组织的API所有者发布一套API,然后由应用程序开发人员消费。不过,为了让这种情况真正具有可持续性,应用程序开发人员应该对发布的API的形式和类型有发言权,从提出向API增加字段的需求,到把多个不同的API组合成一个API,从而满足特定设备的限制和需求。

为此,最简单的方法是有论坛或问题工单系统跟踪特性请求,方便API的消费者和生产者交流。还有一种更具前瞻性的方法,就是API开发者门户本身为消费者提供一个自助沙箱平台,用于组合API,创建自己的私有API。除了要维护生产者发布的正式API外,API开发者门户还为消费者提供了一个完备的平台,让他们可以创建满足应用程序特有需求的私有API。

促进重用的激励措施

除了创建一个门户外,企业还需要引入市场激励措施促进API重用,既包括金钱方面的,也包括非经济方面的。在组织内部,激励措施通常没有货币价值。例如,组织可以维护一个排行榜,突出显示名列前茅的API发布者和应用程序开发人员。企业也可以跟踪哪些API的订阅者最多,并在开发者门户的仪表板上展示。研讨会和黑客马拉松可以让开发人员学到并运用技巧,这也可以作为激励措施。

在寻求面向外部组织的激励措施时,组织更经常采用某种形式的经济措施。例如,前文提到的电信服务提供商让用户可以使用预定义的模板快速创建应用程序,然后他们就可以把它们发布到公司的应用商店里,共享由此产生的收益。服务的收益分配模型是第三方服务创建者占70%,电信公司占30%。这使得企业从基于其API构建的应用那里获取的收益环比增长了20%。

API货币化

API快速变成产品,卖给或提供给应用程序开发人员,从而从消费这些API的其他业务单位或第三方组织获得收益。因此,API市场需要有可以直接或间接实现API货币化的机制。

关于间接货币化,公司认识到,API的应用越广泛,就可以为核心业务带来更多的客户和交易,并且可以扩展生态系统。世界领先的活动门票销售商StubHub就是个很好的例子。其API项目的其中一个目标是,让旅游公司、宾馆和酒店行业里的其他组织组成一个生态系统,向他们的客户追加销售活动门票。任何时候,只要宾馆的客户在宾馆的网站上使用了StubHub API,StubHub就可以赚到钱。

同时,有两种组织可能会愿意使用的直接货币化手段。对于内部的直接货币化,通常是一个部门从另一个使用特定API的部门赎回账单。由于现金是由公司会计从内部分配的,所以没有实际的信用卡支付或电汇。至于外部的直接货币化场景,一家企业销售服务,作为客户的外部企业的解决方案藉由这些API获得增强。例如,Twilio销售API,而Uber借助它们在其移动App中提供文字讯息及电话呼叫功能。

分析在货币化中扮演者重要的角色,帮助企业了解程序的运行方式、API的使用情况以及开发者门户与合作伙伴的交互情况,并进行管理。借助分析,企业可以了解API客户什么时候达到了API协议中的限值,并使用这个信息向用户销售更高级别的方案。

如果目标是根据API的每次使用收费及开具发票,那么组织实现直接的API货币化模型就需要采用更为增量化的方式跟踪使用情况。此外,直接的外部货币化需要集成计费引擎,大多数情况下是符合支付卡行业数据安全标准(PCI DSS)的支付网关。基于云的解决方案已经有了符合PCI标准的计费引擎,组织无需再考虑合规性或认证。因此,即使大多数API的管理部署是在本地,计费部分也很可能外包给云服务。

不可或缺的治理

在管理API市场时,企业应该能够控制谁可以在哪里发布什么,并且要确保发布这些API符合组织标准,诸如URL模式、命名约定、访问控制规则。为此,他们务必要引入一个不可或缺的治理模型,帮助他们满足策略和合规性需求。

可以把API发布在一个集中式的API开发者门户上,实现API的集中治理。但是,为了避免扼杀创造力,企业可能会考虑自下而上的治理策略,而不是自上而下的方法。例如,企业可以选择一种去中心化的API发布模型,让每个业务单位自行设计和发布API。

由于主要目标是将组织结构运用到API管理上,所以让每个业务职能部门独立管理自己的API,包括对已发布的API进行更新或设计改进,这种自下而上的方法满足这种需求。把这项任务分解,可以让每个业务单位在团队成员如何构建和暴露API方面保持创造力,同时可以保证对这些API进行有效地管理。

API分析

正如前面讨论过的,分析在支撑API货币化方面扮演着重要的角色。更深入地讲,API分析让企业可以洞察性能、可用性、潜在的安全问题,而且随着时间推移,分析可以提供决策支持。通常,实现API市场的组织将依赖各种分析能力的组合,这可能是由完整的平台提供,也可能是由单独的产品提供,这要看具体的需求。

企业通常是最熟悉批量处理与分析的,他们可以引入这种方法发现一段时间以来发布的API的长期趋势,其中包括调用错误、延迟时间、日常跨地域使用情况、随着时间推移的注册情况、请求调节、异常响应预警、API健康可用性预警。

不过,为了实时观测使用情况、性能及其他指标,引入流分析软件很重要,通常,这还会引入复杂的事件处理技术。开源选项包括EsperSiddhi CEP引擎以及Apache StormApache Spark流分析项目。值得注意的是,藉由机器学习实现的预测性分析既可以应用于实时数据,也可以应用于历史(批量)数据,用于发现诸如欺诈、用户速率限值、逼近容量限值及其他因素,以便可以及时触发恰当的操作。

最后,仪表板以一种有意义的方式将从流分析和批量分析得出的趋势可视化,让企业和IT用户可以洞察获得的数据。借助仪表板,企业可以跟踪一组常见趋势,然后根据需求指定不同的预警。例如,企业可能希望跟踪每个应用程序的API使用情况、每个应用程序中调用API最多的用户以及每个应用程序中API使用的资源路径。

组织可能还希望使用仪表板监控每个应用程序错误调用API的数量。例如,在一次错误调用中,消息传递顺序错误。在默认情况下,当后台服务不可用时,API管理系统会将这次API调用视为错误调用。其他仪表板的例子还有API延迟时间、API跨地域使用情况、开发者随着时间推移的注册情况以及异常响应时间预警。

对于任何企业,成功有赖于所有利益相关者的贡献与参与,在理想情况下,一个有效的API市场是分享式业务。通过引入本文讨论的技术和策略,企业就有了良好的定位,可以基于当前的API管理方案创建API市场,推动发展,培育新的业务机会,创建新的收入流。

关于作者

Mifan Careem 是WSO2解决方案架构的高级主管。他与客户密切合作,并联系WSO2的工程和销售团队,根据用户需求分析、定义领域特有的解决方案架构。
 

 

查看英文原文:Key Steps to Building and Managing an Effective API Marketplace

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT