After my careful study on "https://github.com/grpc/grpc/blob/master/test/cpp/qps/server_async.cc:" suggested in another topic "*GRPC Threading Model*", I have some concreted questions wandering in my mind, because user has to provide their own threading models. Since I am implementing pubsub services on top of grpc, threads are important for stream rpc performance. I am seeking help from grpc community.
I am implementing a aysnc grpc pubsub services (multiple services methods), and try to utilize multi threads to boost performances. Solution form "https://github.com/grpc/grpc/blob/master/test/cpp/qps/server_async.cc:" just tell me that each thread handles a unique CallData object (ServerRpcContext instance): one thread <-> one completion queue <-> one grpc server context, one rpc method (CallData instance with its address as a unique tag) I am familiar with hands on experiences of Linux event handling mechanisms of epoll , kqueue, and select. Now I am curious about what are the differences of the following grpc threading models and how to implement them in pubsub server and client sides: 1 thread <-> 1 completion queue <-> mutliple rpc methods handling 1 thread <-> multple completion queue <-> multiple rpc methods handling many threads <-> 1 completion queue many threads <-> many completion queue -- 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/c4c4423f-5810-4f76-b4c3-b59a3b1e5268%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
