Hi Chaitanya,

Thank you for you sharing! Can you provide the .proto file with it? It's 
hard to understand without the .proto file, and I can't change the code and 
recompile it. 

Thanks
Sean

Hi John,
>
> I have added 2 variant of routeguide example, one for asyn stream with one 
> rpc and other for async stream multiple rpc. You can take a look at the 
> code. this was working with grpc 0_11 version. This will give you a good 
> idea of how to use grpc for asyn stream.
>
> https://drive.google.com/open?id=0B1MMqYKUHgtJQWN4cjB6U25LdTQ 
>
> Thanks
> Chaitanya
>
> On Thu, Jun 15, 2017 at 6:39 PM, John Coffey <joh...@gmail.com 
> <javascript:>> wrote:
>
>> Chaitanya, 
>>
>> that would be really useful, thanks, I will look forward to seeing the 
>> code.  It is strange that gRPC does not have asynchronous stream support, 
>> you would think this kind of listener/observe pattern would be a pretty 
>> popular feature.
>>
>> John
>>
>>
>> On Thursday, June 15, 2017 at 12:55:10 AM UTC-4, Chaitanya Gangwar wrote:
>>>
>>> Hi John,
>>>
>>> When i was working on this, there was no example in grpc package to do 
>>> the same. Actually, what you need here is asynchronous streaming, but in 
>>> examples, there are 2 variant, one is synchronous stream (routeguide) and 
>>> normal async rpc (helloworld). You have to understand both the examples and 
>>> need to implement async stream yourself. I may have some poc code with me 
>>> where i tested this functionality. Ill check my repo and will post it to 
>>> you. May be that will be of some help for you.
>>>
>>> Thanks
>>> Chaitanya
>>>
>>> On Thu, Jun 15, 2017 at 12:38 AM, John Coffey <joh...@gmail.com> wrote:
>>>
>>>> Josh/Chaitanya, I have a similar application - are there any C++ 
>>>> examples that do this kind of thing?  I just posted a new question to the 
>>>> newsgroup asking and then I found this thread.
>>>>
>>>> John
>>>>
>>>> On Friday, January 22, 2016 at 4:53:42 PM UTC-5, Josh Humphries wrote:
>>>>>
>>>>> There is an example of streaming, at least in a proto file:
>>>>>
>>>>> https://github.com/grpc/grpc/blob/master/examples/protos/hellostreamingworld.proto
>>>>> In this case, the server is expected to just immediately send the 
>>>>> requested number of messages.
>>>>>
>>>>>
>>>>> Assuming you had some "registry" of streams that represent clients to 
>>>>> which you forward data:
>>>>>
>>>>> In your server implementation, you'd just register the StreamObserver 
>>>>> (that's what its called in the Java runtime 
>>>>> <https://github.com/grpc/grpc-java/blob/master/stub/src/main/java/io/grpc/stub/StreamObserver.java>
>>>>>  
>>>>> anyway).
>>>>>
>>>>> Here's example generated code for an endpoint with a streaming 
>>>>> response: 
>>>>> https://github.com/grpc/grpc-java/blob/master/examples/src/generated/main/grpc/io/grpc/examples/routeguide/RouteGuideGrpc.java#L80
>>>>> (That's the interface you implement on the server.)
>>>>>
>>>>> When your server receives data from whatever other source, it can 
>>>>> consult this registry of streams and then call onNext to send the 
>>>>> client(s) 
>>>>> data. Unregister when the stream errors or when you close the stream. You 
>>>>> close it via calling onComplete or onError (latter will send error code 
>>>>> to 
>>>>> the client).
>>>>>
>>>>>
>>>>>
>>>>> ----
>>>>> *Josh Humphries*
>>>>> Manager, Shared Systems  |  Platform Engineering
>>>>> Atlanta, GA  |  678-400-4867
>>>>> *Square* (www.squareup.com)
>>>>>
>>>>> On Fri, Jan 22, 2016 at 3:51 PM, Chaitanya Gangwar <
>>>>> chaitany...@gmail.com> wrote:
>>>>>
>>>>>> Thanks josh for the reply. So for this case i need both async server 
>>>>>> and client. sync rpc will not work. please correct me if i am wrong. 
>>>>>> also 
>>>>>> do we have any example which i can look into. i checked async helloworld 
>>>>>> but that is simple rpc do we have any example for async stream rpc.
>>>>>>
>>>>>> On Friday, 22 January 2016 12:28:18 UTC-8, Chaitanya Gangwar wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> I have a requirement, where  multiple clients send (register) a 
>>>>>>> request to server and continue, whenever server have data, server will 
>>>>>>> push 
>>>>>>> the data to clients. it may be possible that server may not have data 
>>>>>>> at 
>>>>>>> present and will keep pushing data whenever it has. Some other thread 
>>>>>>> is 
>>>>>>> providing the data to server. 
>>>>>>>
>>>>>>> Can i do this with grpc without blocking the server and client. What 
>>>>>>> i understand from grpc streaming is that client will be waiting for 
>>>>>>> data 
>>>>>>> till server sends out the data and after receiving the data it closes 
>>>>>>> the 
>>>>>>> connection.
>>>>>>>
>>>>>>> please help, if i can do this using grpc and if yes how should i 
>>>>>>> design this.
>>>>>>>
>>>>>>> thanks
>>>>>>> Chaitanya
>>>>>>>
>>>>>>> -- 
>>>>>> 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.
>>>>>> To view this discussion on the web visit 
>>>>>> https://groups.google.com/d/msgid/grpc-io/586023c6-8a37-4662-a592-0047b7c916d4%40googlegroups.com
>>>>>>  
>>>>>> <https://groups.google.com/d/msgid/grpc-io/586023c6-8a37-4662-a592-0047b7c916d4%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>> -- 
>>>> You received this message because you are subscribed to a topic in the 
>>>> Google Groups "grpc.io" group.
>>>> To unsubscribe from this topic, visit 
>>>> https://groups.google.com/d/topic/grpc-io/FKeg4yfB-Jo/unsubscribe.
>>>> To unsubscribe from this group and all its topics, 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/3533c9ab-ad6a-4566-9e49-ed438d565eb3%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/grpc-io/3533c9ab-ad6a-4566-9e49-ed438d565eb3%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "grpc.io" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/grpc-io/FKeg4yfB-Jo/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to 
>> grpc-io+u...@googlegroups.com <javascript:>.
>> To post to this group, send email to grp...@googlegroups.com 
>> <javascript:>.
>> 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/15c847d8-5111-410b-8ddf-912bbc631135%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/grpc-io/15c847d8-5111-410b-8ddf-912bbc631135%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
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 post to this group, send email to grpc-io@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/5a3db516-4f2b-4206-b6ad-182a5f4a7595%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to