问题标签 [varnish-vcl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
580 浏览

restart - 清漆重启跟踪

我们的清漆实例

32G 内存,16 核处理器,我们为清漆分配 24GB 内存

我们的 varnish 实例的平均正常运行时间仍然是 3 小时,这是非常低的。我们的缓存 TTL 是 1 小时,宽限期是 2 小时。我们通常每 5 分钟通过一个 java 进程刷新一次缓存内容[点击次数超过 n 次]。varnishncsa我们通过不断地轮询输出来跟踪清漆的命中率。

我试过了varnishadm panic.show

关于我们错过了什么的任何输入?

0 投票
1 回答
875 浏览

curl - 无法在 VARNISH 上使用 CURL 进行清除

我无法使用 CURL 清除清漆中的对象

CURL 命令: curl -X PURGE localhost/public/stylesheets/main.css -v curl 命令返回 200 OK 响应。对象没有被清除

请帮忙

0 投票
1 回答
1997 浏览

magento - Magento 无法访问扩展 -> 重定向到管理员登录

我已经用 Nginx、Php-Fpm 和 APC 设置了我的新服务器。此外,我正在使用外部清漆缓存和 MySQL 数据库。

由于我正在使用该设置,因此我的一个扩展程序停止工作。如果我尝试在后端 Magento 中访问它,我会退出并重定向到 magento 管理员登录。

这是我的 Nginx 配置文件:

1.) nginx.conf

2.) 域.conf

nginx 错误日志告诉我:

2013/05/27 21:07:01 [错误] 18489#0: *4 访问被规则禁止,客户端:54.xxx.x.xx,服务器:www.domain.de,请求:“POST /app/etc /local.xml HTTP/1.1”,主机:“www.domain.de”

在我看来,我在某处限制了访问。我已经改变了这个:

我为此头破血流。有人有提示我去哪里看吗?

提前致谢!

编辑1:

在我看来,某处有混淆。如果我删除听:8080;有用!Varnish Server(在:80)每两次尝试进入页面时都会发出一条错误消息(通常设置为 ELB - Varnish - Nginx),但基本上我可以访问扩展。Varnish有可能以某种方式重定向它吗?

这是默认的.vcl

0 投票
1 回答
136 浏览

varnish - Varnish:无法让基本缓存按预期工作

我正在学习 Varnish,但我无法理解一些非常基础的知识。我创建了一个简单的文件,我希望 Varnish 将其存储在缓存中,名为test.php,它看起来像这样:

有了这些标头,我希望 Varnish 将文件在缓存中存储一​​个小时(3600 秒)。但是,当我运行varnishlog -b -o -i TxURL(监控对后端的请求)时,我可以看到有流量。像这样:

如何让 Varnish 缓存这个文件,而不是每次都联系后端?

0 投票
1 回答
89 浏览

varnish - Varnish 便携式 vlc 脚本

在 Varnish 中,VCL 2.x 和 3.0 之间存在一些差异。例如哈希生成。在 Varnish 2.x 中,你会req.hash += somevar在 Varnish 3.x 中调用hash_data(somevar).

是否可以编写适用于 2.x 和 3.x 的可移植 Varnish 脚本?例如,我可以if使用 Varnish 版本吗?

0 投票
1 回答
4709 浏览

magento - Varnish Cache 清空 Magento 中的购物车

我们正在运行一个带有 RDS 和 Varnish Cache 以及 nginx 的 Amazon Web Service EC2 Magento 实例。我们目前面临的问题是,当用户尝试将第二件商品添加到购物车时,购物车是空的。由于设置了新的 Cookie,会话被丢弃。在这里您会找到我们的 .vcl 文件

我们做的事情基本上是错误的吗?还是我们找错了地方?非常感谢您的帮助。

干杯,沃尔夫冈

0 投票
1 回答
1751 浏览

varnish - 基本清漆配置

我正处于第一次设置 Varnish 的初级阶段,我想我一定有一些基本的误解。出于测试目的,我保留/etc/default/varnish了其默认配置:

/etc/varnish/default.vcl有这个内容(我的 Nginx 虚拟主机现在仍在监听 80 端口):

我的 Nginxserver块包含以下内容:

为了更好地衡量,netstat在这些关键端口上显示侦听器:

据我阅读有关该主题的大量帖子了解,我应该能够在浏览器中打开 my.site.com:6081 以将流量通过 Varnish 路由到 Nginx 并返回。我没有看到。相反,我收到连接错误。在这一点上,我不想做任何复杂的事情。我只想建立通信并检索内容。

我毫不怀疑这是我的问题,而不是 Varnish 的问题,但我看不出我哪里出错了。我看不出我的超基本配置与我在网上找到的配置之间有任何关键区别。我哪里出错了?

  • Ubuntu 12.04
  • 清漆 3.0.2
  • Nginx 1.1.19

任何补救援助将不胜感激。

0 投票
1 回答
217 浏览

varnish - 在 Varnish 中将所有 png 请求重定向为 jpg 请求

我想将所有 .png 请求重定向到 Varnish VCL 中的 .jpg 请求示例:http ://example.com/images/boy.png (或 .PNG)到http://example.com/images/boy.jpg中清漆 VCL

0 投票
1 回答
465 浏览

c - 如何使用 inline-c 选择清漆后端

根据请求 uri,我想使用 mysql 数据库中的数据将带有清漆的请求转发到不同的服务器。该数据库包含 2 个字段:name 和 base_url。如果请求转到 /forwards/%name% 我想将请求转发到由 base_url 定义的服务器/后端。我的第一次尝试是使用 VRT_SetHdr 设置现有后端,但这不起作用:

也许可以设置一个像 X-backend 这样的标题,然后用普通的 VCL 进行选择?

我还想使用来自 mysql 的相同数据在运行时定义后端。这可能吗?

0 投票
1 回答
1825 浏览

mysql - 在高流量中清漆高数据库连接

我们正在运行一个 API,该 API 有时在某些时期会遇到非常繁忙的流量。在正常情况下使用 varnishstat 我们可以看到需要 0 个后端连接。我们将此解释为 Varnish 能够成功地提供缓存中的所有数据。

当流量激增时,我们会看到后端连接激增,这反过来又打开了数据库连接,导致数据库资源激增。Varnish 似乎在高流量时被绕过了。

我们调整了 MySQL 中的 max_connections 设置并调整了两个 varnish 配置文件。我们使用 4 个线程池运行,最少 200 个线程,最多 4000 个线程。我们为清漆分配了大量内存(15GB 中的 8GB)。

问题是为什么后端连接会随着流量激增?这肯定是 Varnish 应该防止的。我假设我们的配置有问题,但无法找到关于我们可以更新什么以防止在高流量中绕过清漆的请求的帮助。

任何帮助表示赞赏