varnish - 以编程方式向 Varnish-cache 4.x 添加/删除后端

标签 varnish varnish-vcl

我有一个简单的程序,用于添加和删除 varnish 3.x 的后端。 它的完成方式很简单:有一个 python 程序,它接受 HTTP 请求来添加和删除命名服务的后端。它使用 VCL 配置添加和删除特定 Controller 的后端,然后重新加载 varnish 的配置。

现在我想知道如何为新的(4.x)Varnish-cache 实现这样的方案。我从文档中看到directors have moved from VCL模块到 VMOD 可加载文件。在我看来,现在不可能在不重新启动整个 Varnish 的情况下动态添加新的后端或 Controller 。还是我错了?

所以问题是:

  1. Varnish-cache 4.x 是否有任何外部 [varnish 本身] API 用于管理配置和 Controller ?
  2. 在 Varnish 4.x 中自动管理 Controller 而不需要重新启动 Varnish 的最佳方式是什么?

最佳答案

将 Controller 移至 VMOD 是让您询问的 API 服务成为 #1 的一个步骤。

编写 VCL 并在更改时加载它的软件可以继续像以前一样运行。 4.0 中仅改变了符号/语法。像平常一样使用 vcl.load/vcl.discard 和 varnishadm 来执行 #2。

关于varnish - 以编程方式向 Varnish-cache 4.x 添加/删除后端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27902313/

相关文章:

Varnish 504 网关超时

varnish - Varnish hit-for-pass 是什么意思?

varnish - 对于 Varnish 级别的特定文件的所有请求,如何返回 500 响应?

node.js - 如何将某些 URL 模式路由到特定端口?

apache - 配置 Varnish ,socket() : Address family not supported by protocol

java - 如何从 varnish 缓存中获取正确的 .xls 文件?

magento - wget --mirror 不创建 Varnish 缓存

linux - Varnish http 加速器失败

正则表达式以匹配主机请求

varnish - 快速清除Varnish中大量URL的方法