写点什么

为了不干扰客户,LinkedIn 发布 API 版本化框架

  • 2022-09-01
    北京
  • 本文字数:825 字

    阅读完需:约 3 分钟

为了不干扰客户,LinkedIn发布API版本化框架

最近,LinkedIn 透露了他们如何为 LinkedIn Marketing API 构建API版本化框架,允许外部合作伙伴按照自己的节奏迁移到新版本的 API。

 

在这个新框架中,每个 API产品都通过一个为外部合作伙伴提供 API 的中间层公开其版本化的模型和 API。中间层 API 和模型通过特定的版本向外部公开,用户可以按照自己的节奏迁移到新版本。

 

遗留的架构由各种业务线构建的后端 API 组成,并通过Rest.liAPI网关对外公开。由于这些 API 没有版本控制,所有为内部 API 实现的东西都会直接暴露给外部用户。

 

这篇文章解释道:“未版本化的 API 阻碍了用户访问最新的特性,并给内部开发新特性带来了挑战。此外,开发者的反馈表明,我们在短时间内发布了太多 API 变更,打乱了他们的计划。”

 LinkedIn 构建了新的框架,基于特定版本公开模型和 API 变更,从而有效地将外部应用程序的变更隔离开,并允许合作伙伴按照自己的节奏迁移到新版本。

 

每当外部应用程序请求特定的 API 版本时,API 网关将对请求进行转换,并将其转发到适当的中间层。

 

与其他 API 网关一样,这个架构中的 API 网关带有身份验证、请求映射、节流控制、授权、反滥用控制和请求调度功能。

 

最终,中间层将后端实现的特性公开给外部应用程序。

 

每个 API 产品只有一个中间层。



同一逻辑资源的不同版本可以在中间层中共存,并在代码中维护这个引用。网关使用请求映射调用所需的资源版本。

 

中间层的服务负责从业务线调用后端与版本无关的服务。如果中间层服务在代码中维护特定于版本的逻辑,则可能会导致代码维护问题。为了避免这种情况,团队构建了“版本执行框架”库,用于完成这两件重要的事情——通过用户定义的转换将请求转换为最新的可能版本;请求被转换为最新的可能版本后,将再次通过用户定义的内部模型转换器将其转换为最新可用的内部模型。

 

这一实现凸显了 LinkedIn“不干扰客户”的设计原则。

 

随着版本化的 LinkedIn Marketing API 于 2022 年 6 月发布,开发者和合作伙伴可以使用这些稳定的 API。

 

原文链接

The LinkedIn Way of Building API Versions

 

2022-09-01 08:004384

评论

发布
暂无评论
发现更多内容

惊艳!四份SpringSecurity笔记带你玩转金三银四的面试题集!

996小迁

Java 架构 面试 springsecurity 笔记

京东T7团队技术4面:线程池+索引+Spring +分布式锁+Mysql+项目等

Java架构之路

Java 程序员 架构 面试 编程语言

搭建自己的MinDoc文档库

后台技术汇

28天写作

大作业(二)

橘子皮嚼着不脆

金三银四将至!我肝了万字的Java垃圾回收,看完你还敢说不会?

编程 面试 JVM

即时通讯的原理和历史

v16629866266

强!腾讯老兵亲荐“从零开始学架构”教你如何成为出色的架构师?(整整2000页的笔记)

比伯

Java 编程 架构 面试 程序人生

别小看 Log 日志,它难住了我们组的架构师

Java架构师迁哥

大作业二

fmouse

架构师训练营第 1 期

极客时间架构 1 期:大作业二 学习大总结

Null

重学JS | 聊聊闭包

梁龙先森

大前端 编程语言 28天写作

【JS】函数实参与形参

德育处主任

JavaScript 大前端 js 28天写作

大作业(一)

橘子皮嚼着不脆

智能合约DAPP软件APP开发|智能合约DAPP系统开发

系统开发

价值 - 风险管理(二)

石云升

读书笔记 风险管理 28天写作 价值

智慧城市发力,区块链助力土木建设数据存储

CECBC

土木建设

[0/28]软件质量的那点事(1)———引言

L3C老司机

软件测试 软件质量

去中心化DAPP系统APP开发|去中心化DAPP软件开发

系统开发

极客时间架构 1 期:大作业一 根据业务编写指定输出系统概要设计

Null

DeFi去中心化DAPP系统开发的知识科普

W13902449729

去中心化金融 DeFi去中心化系统开发

HDFS SHELL详解(2)

罗小龙

hadoop 28天写作 hdfs shell

Java并发编程实战(2)- Java内存模型

技术修行者

Java 并发编程 happens-before 多线程

同城快递系统架构

Jacky.Chen

RocketMQ学习笔记

大刘

RocketMQ MQ 消息队列

有技术和落地,区块链才能创造价值

CECBC

区块链

架构师训练营 1 期:大作业(二)

piercebn

架构师训练营第 1 期

能上能下

张老蔫

28天写作

APICloud AVM多端开发 | 企业app开发解析:案例展示、加盟申请功能源码

YonBuilder低代码开发平台

大前端 小程序flutter, 跨平台 APICloud

高频量化交易机器人系统开发技术

薇電13242772558

区块链 策略模式

太过完美!滴滴全球首发Spring5+SpringMVC5+Mybatis3.X全彩小册

Java架构追梦

Java 源码 架构 滴滴 ssm

最新区块链科普图书《区块链进化史》上市

CECBC

区块链 科普

为了不干扰客户,LinkedIn发布API版本化框架_语言 & 开发_Tanmay Deshpande_InfoQ精选文章