Thanks for your reply.

I am using c++.

For my first question. Can you please explain a bit more? I tested with two 
concurrent client requests. I saw two threads running in my service 
routine. My server code does not spawn any thread. So I think gRPC spawns 
the thread for me. That is why I want to understand the thread model. Is it 
one thread per one client? or there is a thread pool for all clients?

Thank you!

Carl Mastrangelo於 2017年1月3日星期二 UTC-8下午4時35分42秒寫道:
>
> Each stream does not require a separate thread; gRPC multiplexes these 
> onto your threads.  It is slightly different for each language, but in 
> general threading isn't that much of a problem.
>
>
> As for your second question, can you mention what language you are using? 
>  That will affect the answer.
>
> On Tuesday, January 3, 2017 at 10:27:41 AM UTC-8, [email protected] 
> wrote:
>>
>> Hello,
>>
>> I am very interested in the gRPC bi-directional streaming feature. I have 
>> a few questions on the server side. In the .proto file, I define a simple 
>> streaming RPC and message below
>>
>> service MfMessaging {
>>   rpc MfRpc (stream MfStream) returns (stream MfStream) {}
>> }
>> message MfStream {
>>   bytes message=1;
>> }
>>
>> My first question is: what is the thread model at server side? I mean how 
>> gRPC handles if there are multiple concurrent requests from different 
>> clients? Does gRPC spawn a thread for each client? If yes, is there any 
>> limit or gRPC has a thread pool underneath?
>>
>> My second question is: In the service routine, I get a ServerReaderWriter 
>> stream (e.g. ServerReaderWriter<MfStream, MfStream>* stream). What is 
>> lifetime of this stream? Can I pass this stream to another thread which 
>> writes response back later?
>>
>> Look forward to your reply. Thank you very much!
>>
>>

-- 
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/2a6347f9-6040-43db-ae63-0beeba2b2343%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to