Hello ... We are looking to setup client-side loadbalancing in GRPC (C++). Our current plan roughly is the following: 1. Use consul for service discovery, health checks etc. 2. Expose the IP addresses behind a service to GRPC client via Consul DNS Interface <https://www.consul.io/docs/agent/dns.html> 3. Configure the client to use simple round_robin loadbalancing (All our servers have the same capacity and therefore we don't need any sophisticated load balancing)
Before we embark on this path, it would be great if someone with gRPC production experience could answer a few questions. Q1: We plan to use a low DNS TTL (say 30s) to force the clients to have the most up to date service discovery information. Do gRPC clients honor DNS TTL ? Q2: Is it possible for gRPC to resolve DNS via TCP instead of UDP ? We could have a couple of hundred backends for a service. Q3: Does gRPC do its own health checks and mark unhealthy connections? Also from experience, do folks think that this is a really bad idea and we should really use grpclb policy and implement a look-aside loadbalancer instead ? Thanks, -Ram -- You received this message because you are subscribed to the Google Groups "grpc.io" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/grpc-io. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/CA%2Bv4T%2BL4En2%2BMbOaTPmmaRXJiyfMr%3Dn-yF8b-k97cV%2BebSWxww%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
