写点什么

为了不干扰客户,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:004548

评论

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

🌏【架构师指南】分布式技术知识点总结(下)

码界西柚

分布式 架构设计 6月日更

BoCloud博云稳居中国容器软件市场份额TOP 5

BoCloud博云

容器

搭建Prometheus+Grafana的云平台监控系统

学神来啦

云计算 Linux 运维 开发日志

专科小伙豪取三杀,斩获阿里、京东和蚂蚁Java岗offer的原因找到了!

北游学Java

Java 面试

阿里云边缘容器服务ACK@Edge 通过33项测评,拿到“2021云边协同能力认证”

阿里巴巴中间件

百度智能云NIRO MAX机器人,打造智慧党建新体验!

百度大脑

人工智能 百度 机器人

WebRTC 传输安全机制第二话:深入显出 SRTP 协议

阿里云CloudImagine

音视频 WebRTC 通信 流媒体开发 SRS流媒体服务器

网易有道开源EMLL:高性能端侧机器学习计算库,大幅提高计算性能

有道技术团队

人工智能 机器学习 高性能计算 端侧AI

数据库设计的 10 个最佳实践

xcbeyond

数据库 数据库设计 6月日更

阿里云中间件首席架构师李小平:企业为什么需要云原生?

阿里巴巴中间件

C#开发之基于NPOI的操作Excel开发体验

吴脑的键客

C# Excel

80后自立门户,90后异军突起,中国投资新势力加速崛起 | 创业邦2021年40位40岁以下投资人重磅发布

创业邦

创业

关于Redis分布式锁的那些事

Hex

redis 后端

细细阅读,3张图带你理解,零拷贝,mmap和sendFile

奔着腾讯去

c++ Linux Mmap C++后台开发 网络io

WebRTC学习—WebRTC详解

Linux服务器开发

音视频 WebRTC ffmpeg SRS流媒体服务器

星环科技TDH8.0使用必读2: 10种数据模型全支持 未来属于多模型大数据平台

星环科技

大数据 边缘计算 知识图谱 数据管理平台 多模型数据

Flink User-Defined Source

Alex🐒

flink 翻译 Flink扩展 flink1.13

深入浅出 LVS 负载均衡(三)实操 NAT、DR 模型

UCloud技术

第六课作业

杰语

iOS开发21年6月面试总结(未完待续~)

iOSer

ios 面试 ios开发 iOS 知识体系

必须加强对电商促销节的监管:保障普通消费者合法权益

石头IT视角

16倍效率提升体验,博睿数据APM成企业运维超级加速器

博睿数据

APM 博睿数据 数据链DNA

分布式能解决一切问题吗?百度架构师为你解答架构真正奥义!

Java架构师迁哥

移动开发iOS,薪资如何?待遇怎样!

ios开发 iOS 知识体系

终端架构深研,CodeDay 成都站等你

蚂蚁集团移动开发平台 mPaaS

flutter mPaaS Codeday Meetup

WWDC21 给开发者最重要的7条新信息

阿里巴巴大淘宝技术

开发者 WWDC21

2021年5月云主机性能评测报告出炉,华为云跃居榜首

博睿数据

云主机 博睿数据 博睿指数

《转》HttpURLConnection自动重试机制

hasWhere

一体化、标准化、可视化数据平台,博睿数据领跑智能运维新典范

博睿数据

博睿数据 数据链DNA dataview

2021年版,拼多多/阿里/今日头条/京东 Java面经大合集(含答案)

Java架构师迁哥

在线图片坐标拾取工具

入门小站

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