ElvinEfendi commented on issue #3211: URL: https://github.com/apache/apisix/issues/3211#issuecomment-760225191
My 2 cents: https://github.com/kubernetes/ingress-nginx/blob/master/rootfs/etc/nginx/lua/balancer/ewma.lua has always been configured to be p2c if you check the `local PICK_SET_SIZE = 2`. It is just implemented generically - but I think it makes sense to delete the loop and make the implementation specific to p2c. As to using shared dictionary, I've actually tried that in ingress-nginx: https://github.com/kubernetes/ingress-nginx/pull/3295, and we ran with it for at least one version. But then I brought back the shared dictionary and locking in https://github.com/kubernetes/ingress-nginx/pull/4448. In my company, we saw issues with 20 NGINX replicas and 1000 backends. Each NGINX replica with 40 workers. Without the shared dictionary we were seeing load balancing problems, the NGINX workers were taking too long to "know" that a backend is overloaded. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
