清漆能够从文本文件中读取后端URL列表,然后将代理缓存未命中从文本文件中取出的随机URL读取吗?可以清漆从文本文件中读取后端主机清单
我想象的是这样的伪...
/var/services/backend-urls.conf
http://backend-host-1/path/to/application
http://backend-host-2/path/to/application
http://backend-host-3/path/to/application
# etc
清漆配置
sub vcl_miss {
// read a list of urls from a text file
backendHosts = readFile("/var/services/backend-urls.conf");
//choose a random url from the file
randomHost = chooseLineAtRandom(backendHosts);
//proxy the request to the random host
set req.backend = randomHost;
}
提供一些背景,我在一个服务器系统上工作,该系统包含许多后端应用程序,这些应用程序当前位于运行apache的前端之后。我们正在评估用清漆替换apache层,以便我们可以从清漆的缓存功能中受益。我们还有一个服务发现框架,它知道每个后端应用程序的端点位置(当新主机出现或停止服务时,端点会定期更改)。我们使用RewriteMap functionality in mod_rewrite将请求路由到后端服务。然后我们有一个流程来维护基于服务发现框架内容的后端服务列表。
所有这一切对我们在Apache中都很好,除了apache就像是用大锤来攻击一个坚果。我们真正想要的是反向代理loigc,而清漆中的缓存也会有帮助。
有什么办法让清漆从外部资源读取后端网址列表?