我有非常复杂的清漆配置。我无法真正使用导演并手动完成路线。
//webservice1 and webservice2 has probes working there
set req.backend = webservice1;
if (req.backend.healthy)
{
#redirect there
}
set req.backend = webservice2;
if(req.backend.healthy)
{
#change parameters with regex and redirect
}
这很有效。但看起来真的很蹩脚。
有没有"合法"找出后端是否健康的方法?像这样:
if(webservice2.healthy)
{
#change parameters with regex and redirect
}
显然这不起作用。
答案 0 :(得分:1)
我一直在做很多研究,这是实现它的唯一方法(除非你想写一个vmod)。
假设你总是想回复webservice1,除非它生病了,我可能会建议一点点重构:
set req.backend = webservice1;
if(!req.backend.healthy) {
set req.backend = webservice2;
#change parameters with regex
}
# redirect here