lua-resty-upstream-healthcheck lua-resty-balancer
这两个插件是负载均衡和健康检测。组合到一块我不知道怎么写了。
upstream webserver {
server 127.0.0.1:12354;
server 127.0.0.1:12355;
server 127.0.0.1:12356 backup;
}
upstream webserver {
server 127.0.0.1;
balancer_by_lua_block {
local b = require "ngx.balancer"
local swrr_up = package.loaded.my_swrr_up
-- Note that SWRR picks the first server randomly
local server = swrr_up:find()
assert(b.set_current_peer(server))
}
}
1
awanganddong OP lua-resty-upstream-healthcheck 和 lua-resty-balancer 不兼容
好像是 init_worker_by_lua_block 执行顺序先于 balancer_by_lua_block 。 可以试试这个库: https://github.com/upyun/lua-resty-checkups |