Dear Concerned,
Scenario: I have a grpc service which hosted AWS EKS with a single load balancer(ELB) pointing to 5 replicas. My grpc client is creating a single channel and in that single channel trying to send 1000 of requests. If i use multiple channels load balancer properly distributing load if not it is sending to only pod out of 5 replicas.
So what i did is i used RoundRobinLoadBalancerFactory instance in ManagedChannel Builder to build channel. Now when i sending 100's of requests through a single channel it able to distribute the load but it only distributes to 60% of replicas based on its choice and never send any results to rest 40%. Example: 3 replicas only 2 hits, 5 replicas 3 get hit etc...
When i started debugging i found out irrespective number of replicas DnsNameResolver always resolving only 3 servers only. Its pretty weird. Am i missing some thing ?? resolutionResults or Servers should be respective to number of replicas right. Even when i have 2 replicas i have 3 servers in DnsNameResolver . I think my understanding of Source code is bit off. Can some one please Help me in finding what i am missing.
If this is not the right place can you please guide me to correct place where i can find help. If i need to provide any more info please let me know.
Thanking you in Advance for your valuable time.
Regards,
-Vinay,