【问题标题】:How to restart varnish on http request (distributed system)如何在 http 请求上重启 varnish(分布式系统)
【发布时间】:2016-04-16 13:43:33
【问题描述】:

我们有一个 api(python 2.7,flask - elasticsearch 的代理),varnish 用作前端缓存。时不时地发布新数据并将消息(带有http端点的aws SNS)发送到api,是时候清除缓存了。

在 api 上,我们使用清漆管理器 (https://github.com/justquick/python-varnish) 来停止和启动清漆(没有其他方法可以清除所有缓存 afaik)。这可行,但我们得到“[Errno 32] Broken pipe”,因为在处理请求时清漆正在重新启动。

关于如何解决这个问题的任何建议?

【问题讨论】:

  • 你说过,据你所知,没有其他方法可以清除所有缓存。我建议找到正确的方法,寻找其他方法。重新启动服务器以清除缓存并不是一种常见的做法。发送请求时重启服务器甚至很奇怪;你怎么确定命令成功了?

标签: python amazon-web-services architecture varnish


【解决方案1】:
varnishadm -T 127.0.0.1:6082 url.purge .

ban req.http.host ~ www.domain.com

【讨论】:

    猜你喜欢
    • 2012-07-28
    • 2015-02-05
    • 2020-02-23
    • 1970-01-01
    • 2013-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多