10月30, 2020

五年时间,我们怎样构建一个 GraphQL API 组合?

工程师们都非常喜欢听好故事。我们花 5 年时间构建的由 GraphQL 组合的 API 现在上线了(峰值为每秒 110 个请求,延迟 100ms),这个过程应该是一个不错的故事。

我们的需求

多年来,Pipedrive(在 2020 年初已经 10 年了)一直有针我们的 webapp 的一个公开的 REST API,以及隐藏的未记录的端点——其中一个是 /users/self,这个接口最初是用来加载用户信息的,但是随着时间的推移,它变成了一个页面加载 API,由 30 种不同实体类型组成。它最初是在我们的 PHP 单体应用中创建的,本质上的同步的。我们尝试将它分离到并行线程中,但是结果并不太好。

针对现有流量的 /users/self 的延迟分布

从维护的角度来看,随着每一个新的改动,它变得更加混乱,因为没人想要负责这个巨大的端点。

点击查看原文>

本文链接:https://blog.jnliok.com/post/oKtOMtyXrpkRi5kU9J5u.html

-- EOF --

Comments