【问题标题】:How does caching work in GraphQL?缓存在 GraphQL 中是如何工作的?
【发布时间】:2018-08-01 20:11:36
【问题描述】:

GraphQL 用作始终针对单个端点发布的查询语言。所以大部分缓存工具都不能用。那么 GraphQL 完全不可能实现网络缓存吗?客户端缓存是唯一可能的缓存方式吗?或者有什么解决方法?

【问题讨论】:

    标签: caching graphql


    【解决方案1】:

    为 GraphQL API 使用 HTTP 传输时,您可以像任何其他 HTTP 流量一样缓存 HTTP 响应。通常,CDN 将散列完整的请求,然后使用该散列缓存响应。下次收到相同请求时,它不会连接到您的 GraphQL 服务器,它只会使用缓存的结果进行响应。

    GraphQL 的挑战在于它传统上是通过 POST 发送的,许多 CDN 不支持这种方式。您可以将 GET 与普通 CDN(FastlyCloudflareCloudfront)一起使用,也可以使用 GraphQL 特定的 CDN(FastQL)。

    完全披露:我在遇到此问题后构建了 FastQL。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-20
      • 2018-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-15
      相关资源
      最近更新 更多