Airbnb:我们如何将大部分 API 迁移到 GraphQL

2019 年 12 月 12 日

Airbnb:我们如何将大部分 API 迁移到 GraphQL

Airbnb 已经成功地将其大部分 API 迁移到了 GraphQL ,从而缩短了页面加载时间并提供了更直观的用户体验。在 GraphQL Summit 上的演讲中, Brie Bunge   描述了 Airbnb 多个团队都有使用过的多阶段迁移过程。

在每个阶段完成之后,Airbnb 最终推出了一款基于 Apollo 和 GraphQL 应用程序,该应用程序是 100% 类型安全的,没有过度抓取的问题,并且在整个迁移过程的每个阶段,都能保持着网站的正常运行。因为采用了 Apollo 和 GraphQL 来奠定基础,使 Airbnb 可以尝试新的性能改进,而传统的基于 REST 的架构则无法实现。

在迁移过程开始之前,必须满足两个先决条件。首先,必须在后端设置 GraphQL。Adam Neary 曾写过关于 Airbnb 是如何与 GraphQL 合作的文章

第二个先决条件是在前端采用 TypeScript。在 Airbnb 中,TypeScript 和类型安全促进了更快的开发,并且团队对他们自己所构建的东西更有信心。TypeScript 类型可以直接从 schema 中生成(使用 apollo client:codegen --target=typescript),这些类型在后端和前端之间创建一个单一数据源(single source-of-truth,SSOT)。

原文链接:【 https://www.infoq.cn/article/WaZ5OMwZ16o86uGv7p2z 】。未经作者许可,禁止转载。

登录后可解锁全站优质内容

免费畅享技术公开课、顶尖技术团队访谈、一线互联网大厂技术实践

文章
视频
电子书
研究报告
立即登录
2019 年 12 月 12 日 14:00 2122

评论

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

众安黑客马拉松大赛总决赛-InfoQ小编探班

众安黑客马拉松大赛总决赛-InfoQ小编探班

Airbnb:我们如何将大部分 API 迁移到 GraphQL-InfoQ