我安装了清漆4.1并在linux(ubuntu14和centos7)中编译了一些vmods。 现在我想检查已安装的vmod或已加载的vmod列表,检查它们是否安装正确,通过清漆正确识别并加载。 我知道# ls -al /usr/lib/varnish/vmods命令会列出vmod文件,但是这并不能确保vmods被安装/加载成功。 当我search清漆参考时,我发现了一个名为vmods的清漆计数器字段 ,但它显示了在varnishstat中加载的vmods的总数,而不是按名称显示vmods。 而且,varnishstat命令不适合这个用例,因为这个命令是在stdout中显示一次,而不是像varnishstats那样保持实时更新。 如何编写命令来显示名称清漆vmods列表?
我已经在我的生产服务器上成功运行了几个星期了。 现在我正在尝试configurationVarnish来为某些请求使用第二个后端。 我原来的工作VCL(/etc/varnish/default.vcl)是这样开始的: 后端默认{ .host =“127.0.0.1”; .port =“8080”; } VCL的其余部分… 我正在改变它: 后端默认{ .host =“127.0.0.1”; .port =“8080”; } 后端backend2 { .host =“12.34.56.78”; .port =“80”; } VCL的其余部分… 当我重新加载VCL文件时,我得到以下内容: Command failed with error code 106 Failed to reload /etc/varnish/default.vcl. 任何想法是什么错误,或者我怎么能得到更多的信息在这个问题上? (注意:为了重新加载VCL,我使用这里find的脚本: http : //kristian.blog.linpro.no/2009/02/18/easy-reloading-of-varnish-vcl/ )
他们的规范草案说他们应该在3.2.1节。 我们到了吗? 有没有人用IPv6清漆?
我有一台服务器可以访问几百个文件。 他们都很大(有些超过10GB)。 这些文件不会更改,只能读取,但我需要通过广域网访问它们。 我想通过使用在用户附近运行的反向代理服务器来更快地访问。 例如: 用户X想要访问服务器A上的东西 用户X访问局域网上的反向代理服务器,导致caching未命中。 该文件被下载到这个代理服务器。 下次用户X想要相同的文件,他不需要去我的主服务器。 我知道这种情况是微不足道的,但我不会有很多stream量,我的问题更多的是与文件大小本身有关。 我读了一些关于caching大于2GB的文件的问题。 清漆是否面临同样的问题? 谢谢你的任何想法。
我正在运行一个VPS与多个不同的网站,并在前面的清漆进行caching。 但是,有些网站不应该被caching。 我不想为每个网站制定单独的规则,而是制定一个通用的“不要caching”的列表,这个列表与一些规则相关。 可能? 在下面,我草拟了我想要的:VCLconfiguration中不应该被caching的网站列表(ACL语法)。 list cache_blacklist { "domain1.com"; "domain2.com"; } sub vcl_recv { if (req.http.host ~ cache_blacklist) { return(pass); } } sub vcl_fetch { if (req.http.host ~ cache_blacklist) { return(hit_for_pass); } }
我正在解决我的网站上的问题,用户将成功进行身份validation,但浏览器将加载(我相信)用户redirect到的页面的本地caching。 由于是本地caching,因此页面显示为未login。手动刷新页面(使用浏览器上的刷新button)后,页面会显示您已login。 对于正常的Drupallogin事件(经常)对于Facebooklogin事件,(间歇性地)发生这种情况(间歇性地),并且在login和加载页面之后(间歇地)发生页面请求。 我在Mac上重现了Firefox和Chrome上的错误。 该网站在Drupal 7上运行,并使用Varnish(在万神殿举办)。 使用Facebooklogin查看问题的示例再现步骤:1.从Facebook和我的网站注销2.使用Facebookloginbuttonlogin我的网站3.从我的网站注销(使用网站注销链接)。 我仍然login到FB 4.使用我的网站上的FBloginbuttonlogin 我期望最终login在主页上,而不是redirect到主页,而是caching的版本(所以看起来我没有login)。 刷新浏览器导致主页重新login,我从这里设置。 我已经从上面的复制步骤中检查了标题(下面),如果我理解正确,我认为它们表明浏览器正在加载本地caching,当它应该是一个新的页面请求。 我不是caching方面的专家,所以它可能是头或其他问题。 我只是不知道是什么原因。 这是从最初的FBloginbutton点击标题。 由于我已经login到Facebook,我马上redirect到我的网站(这是预期的)。 Request URL:https://www.facebook.com/dialog/oauth?client_id=407390309287595&redirect_uri=http%3A//www.zujava.com/fboauth/connect&scope=email%2Cuser_about_me%2Cuser_website Request Method:GET Status Code:302 Found Request Headers Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8 Connection:keep-alive Cookie:c_user=3413203; csm=2; datr=bq8bT_JILi0PrW8H9GZ5BMy6; fr=0MYU2YYrkDuegxlUi.AWVgxOkdsHe9zhvPJdDW7h70n48; lu=RgWtdyxDRmUr6dOIqyRyPhtg; s=Aa45lsbBS4F1Oll2.BQBsO2; xs=67%3AuZMhOYBden1YIw%3A2%3A1342620598; p=5; act=1342620710713%2F3%3A0; presence=EM342620710EuserFA23413203A2EstateFDutF0EsndF1EnotF0Et2F_5b_5dEuct2F134262011B0Elm2FnullEtrFnullEtwF2196532340EatF1342620710745Esb2F0CEchFDp_5f3413203F1CC; locale=en_US Host:www.facebook.com Referer:http://www.zujava.com/user/login User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_4) AppleWebKit/536.11 (KHTML, like Gecko) Chrome/20.0.1132.57 […]
当网站的后端closures时,清漆立即开始显示503服务不可用错误。 configuration是一切应该被caching7天。 如果后端会停下来一个小时,我希望这个站点能够维持下去。 caching服务器仍然应该从caching中提供页面。 该网站是一个完全静态的网站,每天有300.000页面浏览量。 到目前为止的命中率是2:5(MISS – HIT),我认为这也应该更高。 / etc / varnish / defaultconfiguration: backend www { .host = "ip address here"; .port = "http"; .connect_timeout = 1s; .first_byte_timeout = 5s; .between_bytes_timeout = 2s; } sub vcl_deliver { if (obj.hits > 0) { set resp.http.X-Cache = "HIT"; } else { set resp.http.X-Cache = "MISS"; } […]
我有一个运行Drupal和Apache的高stream量网站,在Varnish服务器负载平衡后面有五个Web服务器。 假设这个网站是example.com。 我在我的default.vcl中使用了五个后端和一个这样的导演: director balancer round-robin { { .backend = web1; } { .backend = web2; } { .backend = web3; } { .backend = web4; } { .backend = web5; } } 现在我正在开发一个新的Django项目,它将成为example.com/new-section上运行的这个站点的一个新的部分。 在检查文档后,我发现我可以做这样的事情: sub vcl_recv { if (req.url ~ "^/new-section/") { set req.backend = newbackend; } else { set req.backend = default; } […]
每次我尝试添加一个额外的后端到我们的VCL文件,它是失败的。 这是我们正在运行的DAEMON_OPTS: DAEMON_OPTS =“ – a:80 \ -T localhost:6082 \ -f /etc/varnish/custom.vcl \ -u varnish -g varnish \ -S / etc / varnish / secret \ -s malloc,10G” 这里是违规的后端(s) 后端b1 {.host =“114.123.456.789”; .port =“8080”; } 后端b2 {.host =“203.123.456.789”; .port =“80”; } 有任何想法吗 ? 直觉可能需要将后端设置在某个地方,但我不确定在哪里。 解决了 所以,事实certificate,我需要在vcl脚本中设置后端,在vcl文件(vcl_recv)中进一步设置。 如果这有助于其他人,这是我复制的代码( https://www.varnish-cache.org/trac/wiki/VCLExampleRestarts ) sub vcl_recv { if (req.restarts == […]
[更新更多consise!] 我是新来的优化Web服务器的大量stream量的世界,但现在我正在进入。 星期一我们的networking服务器被“猛砍” – 我们得到了大量的stream量(一个小时左右就有85,000名访问者),即使我们运行Varnish和nginx(它们正在做好自己的工作),Apache的一方真的很挣扎是在某些请求上生成的一些dynamic内容。 服务器目前有8GB的内存, 很快就会升级到32GB ,所以我真的需要32GB系统的configuration帮助。 目前运行64位的centos。 我已经研究了清漆和nginx设置,它们是非常合理的设置(静态内容由nginx直接抛出,大量的dynamic东西抛出清漆,如果不清漆的请求传递给Apache)。 所以到Apache ..我们使用MPM prefork模块,每个Apache进程似乎用尽了很多公羊: 前三名: S 48 20961 2965 0 75 0 187128 128307 ? ? 00:05:25 httpd S 48 20959 2965 0 75 0 249788 143435 ? ? 00:05:55 httpd S 48 18581 2965 0 75 0 314564 157747 ? ? 00:06:40 httpd 底部3: S […]