tcp connection management

98 views
Skip to first unread message

eleano...@gmail.com

unread,
Aug 7, 2018, 7:21:53 PM8/7/18
to grpc.io

Hi, 

I am doing an experiment to decide whether my application should choose unary call, or bi-directional streaming. Here is what I observe by enable the debug logging:

for unary call, the tcp connection is created per call: 

client side single thread making 5 calls in a for loop: total 5 tcp connections - using blocking stub
client side multi-threaded making 5 calls at the same time: total 5 tcp connections - using block stub
bi-directional streaming making 5 requests: total 1 tcp connection - using async stub

So that means for unary call, it will always create new tcp connection every time? Can you please confirm this behaviour?

Thanks!

eleano...@gmail.com

unread,
Aug 7, 2018, 7:22:33 PM8/7/18
to grpc.io
BTW, I am using grpc-java

pizzas...@gmail.com

unread,
Aug 7, 2018, 7:31:34 PM8/7/18
to grpc.io
Bvfdc

eleano...@gmail.com

unread,
Aug 7, 2018, 7:33:23 PM8/7/18
to grpc.io
sorry what do you mean?

On Tuesday, August 7, 2018 at 4:31:34 PM UTC-7, pizzas...@gmail.com wrote:
Bvfdc

Eric Gribkoff

unread,
Aug 8, 2018, 12:47:53 PM8/8/18
to eleano...@gmail.com, grpc.io
There should only be a single TCP connection when sending five unary calls. Can you post a code sample of how you are testing this? It sounds like you might be re-creating the gRPC channel for each call, which would create a separate TCP connection for each RPC. You should create only one channel, and use this to send multiple RPCs over the same TCP connection.

Eric


--
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+u...@googlegroups.com.
To post to this group, send email to grp...@googlegroups.com.
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/1251d22f-547a-4888-9096-2d36ce1c5705%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

eleano...@gmail.com

unread,
Aug 8, 2018, 1:02:21 PM8/8/18
to grpc.io
Hi Eric, 

Thanks a lot! Yes I indeed create a new channel everytime for the unary call, after changing to use the same channel, I only see 1 tcp connection created. 
Reply all
Reply to author
Forward
0 new messages