清除 python 中的所有 Varnish 缓存

Clear all Varnish cache from python

我有一个 python 后端,作为 api 使用前面的 Varnish 3.0.7。我时不时地希望能够从我的 python 应用程序中清除清漆缓存 - e.i。在更新了一些文档之后。

我一直在尝试从本教程中清除 https://www.varnish-cache.org/docs/3.0/tutorial/purging.html 但它只清除一个对象。

我知道我可以重新启动清漆,但有什么方法可以删除所有缓存的对象吗?

您可以从 varnishadmin (varnishadm "ban req.url ~ /") 中完成,我不确定是否有编程方式满足您的要求。

更新: 你可以看看那个项目https://github.com/justquick/python-varnish(我自己没试过)。

最后我用了https://pypi.python.org/pypi/python-varnish

from varnish import VarnishManager as varnish_manager
manager = varnish_manager(('localhost:6082',))
manager.run('stop', secret=current_app.config['VARNISH_SECRET'])
manager.run('start', secret=current_app.config['VARNISH_SECRET'])

像魅力一样工作...