Hi, I need to be able to create tens of thousands of simultaneous requests between a server and a load balancer to load balance millions of concurrent mobile connections that listen to events using a gRPC stream.
gRPC docs advocate for sharing stubs (first bullet point here): https://grpc.io/docs/guides/performance/ Furthermore, we have the quote: "Each gRPC channel uses 0 or more HTTP/2 connections and each connection usually has a limit on the number of concurrent streams" Initial load testing showed that the Java client stub with ManagedChannel always creates one HTTP/2 connection. In our case, we use AWS ALB, which puts a limit of 128 streams within a HTTP/2 connection. To support e.g. 50k simultaneous gRPC streams, we therefore need hundreds of clients. The easy solution is to just create lots of clients and round-robin between them, but this requires creating a high number of clients to accommodate for any spikes. As you pay per active sockets for the load balancer this is throwing some money away (not much though). I was wondering if there are any libraries or free examples with battle tested code for handling high number of sockets by dynamically increasing the size of the channel pool as well as dynamically scaling it back? Best, Edvard -- 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 grpc-io+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/deffb1d7-c7fa-45d9-a8bf-d52493717f5en%40googlegroups.com.