Agree, I think it is reasonable and a big feature.
What other people think?

黄一天 <[email protected]> 于2020年12月1日周二 下午6:24写道:

> Hi Community,
>
>
>
> Consider  this scenario:
>
> In a single datacenter, there are several cluster nodes(or machines, not
> the node in upstream definition), each node deploys multiple instances as
> head services. All head services are functionally equivalent. Using Apisix
> as the gateway to access all instances. Then we have this logic structure:
>
> In this case, node1-3 can be considered as upstreams, and each upstream
> has N nodes(port1…N) in route configuration.
>
> We found current route configuration may sometimes be unclear and hard to
> manage.  Consider:
>
> (1) if one instance was down, to maintain the SLA of the whole system, we
> may pessimistically consider all instances on the same node were down
> either and immediately kick-off the whole node. In this case, we can simply
> remove one "upstream group" in the route.  (possibly done by healthcheck)
>
> (2) if one single request had failed, it is safer to make it retry with
> the instance on other nodes, not another instance on the same node.
> (without upstream group, it is a bit difficult to find the right instance
> to retry.)
>
> (3) if we consider node3 as a superior node (has more CPU cores or Memory,
> which leads to higher perf), we expect most of the traffic to be forwarded
> to this node. (In this case, maybe we could just adjust this upstream
> group’s weight)
>
>
>
> What if allow one route to support upstream list, not one upstream?
>
> What do you think?
>
> Thanks.
>
>
>

Reply via email to