Thanks Kun for your reply. As you mentioned, I have implemented non streaming async client and server with limited threads configured.
Here are the details: Machine Cores: 8 Channel Count: 1 Grpc Client NIO Threads: (Cores-2) * 2 = 12 Grpc Client App Threads: 30 Grpc Server NIO Threads: (Cores-2) * 2 = 12 Grpc Server App Threads: 30 Grpc Server Max. Concurrent Calls Per Connection = Grpc Server NIO Threads i.e. 12 RabbitMQ Max. Pool Size = 150 Grpc Client Threadpool size for Submitting RPC Call = 200 Grpc Server Threadpool size to execute business functionality = 200 (Added this threadpool to free Grpc Server App Threads) I have best tried to finetune grpc client and server but still I have seen a slowness while submitting tasks for business functionality execution. I have seen many messages piled up in the rabbitmq queue. This shows threads are busy submitting rpc tasks. Am I wrongly configuring grpc server/client here? On Thursday, October 25, 2018 at 3:49:07 PM UTC+5:30, qplc wrote: > > Hi, > > I've implemented zookeeper balanced grpc server and client. > Following are the execution configuration details: > Grpc Client: > Channel Count: 1 > Boss/Acceptor Thread: 1 > Nio Threads: 100 > Executor/App Threads: 100 > > Grpc Server: > Nio Threads: 100 > Executor/App Threads: 400 > Max conucurrent calls per connection: 100 > > Here, I'm using ForkJoinPool while setting executor. I'm sending messages > on RabbitMQ and forwards to gRPC client. Publisher rate is 10k messages per > 10sec. > > As I've observed each request when reaches server it executes till > 10seconds. And as configured most 400 tasks are getting executed > concurrently at a time. Due to this piling up other 9600 requests as > waiting for application threads to be available. > > This is slowing overall process as piling up the requests and I couldn't > delegate the tasks to other thread pool as executor has already been > dedicated for the same. > > Also, I've given 16gb for application. Increasing the thread count could > help here as I have already given sufficient configuration. > How do I improve the execution faster? > > > Thanks, > qplc > > -- 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/e619cf3a-fc77-486e-ad78-72f9186da003%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
