gpt4 book ai didi

Varnish 和http头

转载 作者:行者123 更新时间:2023-12-04 07:06:28 26 4
gpt4 key购买 nike

我是 Varnish 的新手,我想知道 Varnish 是否支持使用 http header 进行缓存。我们设计了一个基于 Rest 的 web 服务,我正在考虑使用 Varnish 来缓存结果。一些请求信息(apikey)是如何通过 http header 传递的,我想知道 Varnish 在检查传入请求(与查询字符串)时是否可以考虑到它。

最佳答案

是的,你可以。应该如何考虑这个 API key ?如果您希望每个用户都有唯一的缓存条目,则仅在特定用户多次请求相同数据时才使用缓存。通过设置正确的 Cache-Control HTTP 响应 header (尽管不会重新验证数据新鲜度),您可以在不使用 varnish 之类的缓存代理的情况下取得长足进步。

在 Varnish 中至少有两种方法;

  1. 让您的应用程序返回一个 HTTP-Response header Vary: apikey 。这指示任何 HTTP 级别缓存(如 varnish)仅在 apikey 请求 header 相同时重用缓存结果.

  2. 或者,更有效的是,修改 vcl 配置中的 vcl_hash 函数以考虑 apikey header 。

    sub vcl_hash { set req.hash += req.http.apikey; }

关于 Varnish 和http头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6098914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com