Re: [grpc-io] Re: Evaluating grpc for cross-platform project

2018-05-16 Thread dharam . kumar
Hi Nicolas,
I guess I'm late to this discussion. I also agree that gRPC, in its current 
form, can't work on Arduino.
If any given microcontroller has support for libstdc++ also, it is still a 
big task to port gRPC(grpc-core, gpr, iomgr) on a given network stack/RTOS 
stack.
Further, gRPC and its modules(chttp2 etc.) is not designed to optimise its 
memory requirements(heap especially) - which is usually a big aspect for 
embedded systems.

My follow-up question is: How grpc-core authors are planning to put grpc 
for such embedded systems, particularly, in IoT context?
Do you think there is value in creating some sort of light-weight 
'gRPC-lite' library which can cater to the needs of microcontroller based 
systems? Tailored to needs of embedded/deeply embedded systems?


On Saturday, April 14, 2018 at 7:55:37 AM UTC+5:30, Nicolas Noble wrote:
>
> There is absolutely no way gRPC can work on Arduino in its current form, 
> and probably will never be. First, gRPC requires either posix network 
> sockets, or windows sockets. Arduino - and most other microcontrollers - 
> only have LWIP, and we don't have a port for this. Second, the core is 
> written in C++, and is moving more and more towards requiring a full STL to 
> work. Arduino, as with most other microcontrollers, doesn't have a 
> libstdc++ that would be acceptable there.
>
> On Thu, Apr 12, 2018 at 11:56 AM, 'Vijay Pai' via grpc.io <
> grp...@googlegroups.com > wrote:
>
>> Thanks for your questions. I'll let someone else respond to #1.
>>
>> On Tuesday, February 27, 2018 at 12:50:26 AM UTC-8, Xintong Zhou wrote:
>>>
>>> 2. grpc on Arduino
>>>
>>> Have you encountered any issues / performance issues when issuing grpc 
>>> requests from Arduino with encryption? We are a little concerned over 
>>> Arduino's processing power and memory.
>>>
>>
>> Interestingly, it looks like no issues about Arduino have been posted to 
>> the grpc/grpc repository. I have seen other github or other source repos 
>> that offer Arduino platform services for gRPC using Python or Node, but no 
>> issues on the grpc/grpc repo.
>>
>> 3. grpc/http2 max concurrent stream limit
>>>
>>> We read that grpc server can set max concurrent stream limit. Will 
>>> client encounter rst_stream if it already has a lot of pending gRPC calls? 
>>> What is the best practice on setting max concurrent stream limit?
>>>
>>
>> Streams that are above the concurrency limit won't get processed right 
>> away but may or may not get a RST depending on whether they just get 
>> stalled (in which case they won't get it) or are actually turned away since 
>> the system realizes that the stream will never get processed. We haven't 
>> recommended a best practice on this for now.
>>  
>>
>>> 4. grpc for external facing services
>>>
>>> Is grpc ready for external facing services? We plan to run external 
>>> facing grpc servers behind server-side L4 loading balancer. Are there any 
>>> security and/or DoS concerns?
>>>
>>
>> gRPC has been running numerous external facing services for a while now. 
>> https://grpc.io/docs/guides/auth.html is a guide for authentication, and 
>> numerous companies have posted their best practices in deployment. A bunch 
>> of different resources are linked from 
>> https://github.com/grpc-ecosystem/awesome-grpc . Hope that helps!
>>
>> - vjpai
>>  
>>
>>> We really appreciate your help!
>>>
>>> Regards,
>>> Xintong
>>>
>> -- 
>> 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/07fc9fd8-4407-46d5-8e9a-2810b1e5d4da%40googlegroups.com
>>  
>> 
>> .
>>
>> 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/8a0833e5-5bd8-40cd-80cc-026861317ee9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [grpc-io] Re: Evaluating grpc for cross-platform project

2018-04-13 Thread Nicolas Noble
There is absolutely no way gRPC can work on Arduino in its current form,
and probably will never be. First, gRPC requires either posix network
sockets, or windows sockets. Arduino - and most other microcontrollers -
only have LWIP, and we don't have a port for this. Second, the core is
written in C++, and is moving more and more towards requiring a full STL to
work. Arduino, as with most other microcontrollers, doesn't have a
libstdc++ that would be acceptable there.

On Thu, Apr 12, 2018 at 11:56 AM, 'Vijay Pai' via grpc.io <
grpc-io@googlegroups.com> wrote:

> Thanks for your questions. I'll let someone else respond to #1.
>
> On Tuesday, February 27, 2018 at 12:50:26 AM UTC-8, Xintong Zhou wrote:
>>
>> 2. grpc on Arduino
>>
>> Have you encountered any issues / performance issues when issuing grpc
>> requests from Arduino with encryption? We are a little concerned over
>> Arduino's processing power and memory.
>>
>
> Interestingly, it looks like no issues about Arduino have been posted to
> the grpc/grpc repository. I have seen other github or other source repos
> that offer Arduino platform services for gRPC using Python or Node, but no
> issues on the grpc/grpc repo.
>
> 3. grpc/http2 max concurrent stream limit
>>
>> We read that grpc server can set max concurrent stream limit. Will client
>> encounter rst_stream if it already has a lot of pending gRPC calls? What is
>> the best practice on setting max concurrent stream limit?
>>
>
> Streams that are above the concurrency limit won't get processed right
> away but may or may not get a RST depending on whether they just get
> stalled (in which case they won't get it) or are actually turned away since
> the system realizes that the stream will never get processed. We haven't
> recommended a best practice on this for now.
>
>
>> 4. grpc for external facing services
>>
>> Is grpc ready for external facing services? We plan to run external
>> facing grpc servers behind server-side L4 loading balancer. Are there any
>> security and/or DoS concerns?
>>
>
> gRPC has been running numerous external facing services for a while now.
> https://grpc.io/docs/guides/auth.html is a guide for authentication, and
> numerous companies have posted their best practices in deployment. A bunch
> of different resources are linked from https://github.com/grpc-
> ecosystem/awesome-grpc . Hope that helps!
>
> - vjpai
>
>
>> We really appreciate your help!
>>
>> Regards,
>> Xintong
>>
> --
> 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/07fc9fd8-4407-46d5-8e9a-2810b1e5d4da%40googlegroups.com
> 
> .
>
> 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/CAEvr0PGd%3DnbWbJww2QaDGK2hXsneckw8ourghMG_tL75U0PqMw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.