使用 GraphQL 进行 Cloudfront 缓存?

Jon*_*non 8 amazon-web-services node.js amazon-cloudfront graphql

在我的公司,我们将 graphql 用于生产应用程序,但仅限于私有资源。

目前,我们的公共 API 是带有 Cloudfront 缓存服务的 REST API。我们希望将它们转换为 GraphQL API,但问题是:如何使用 GraphQL 正确处理缓存?

我们考虑使用 GET graphql 端点,并在查询字符串上进行缓存,但我们有点担心请求的 URL 的大小(因为我们支持 IE9+,并有时向带有虚拟代理和防火墙的学校销售)

所以我们想使用 POST graphQL 端点,但是…cloudfront 无法根据请求体缓存请求

有人有想法/最佳实践可以分享吗?谢谢

Zac*_*bbs 2

今天最好的两个选择是:

  • 使用专门的缓存解决方案,例如FastQL.io
  • 将持久查询与 GET 结合使用,其中一些查询保存在您的服务器上并通过 GET 按名称访问

*完全披露:在遇到这些问题但没有好的解决方案后,我开始使用 FastQL。