Initial Feedback
bivens-dev opened this issue · 1 comments
I saw in the README you were looking for some initial feedback so I wanted to quickly drop some thoughts here as someone very interested in the Dart gRPC ecosystem.
❤️ What I Love
- The benchmarks speak for themselves when it comes to performance improvements.
- The idea of relying on a more feature complete, better staffed networking stack that is more closely aligned with modern standards.
🤔 Questions and Concerns
- Looking at Cronet's README I see it talks about only supporting iOS and Android platforms.
- Where would this leave traditional server based applications for example built with standard
dart compile exeand running in a container on a system like Cloud Run?
- Where would this leave traditional server based applications for example built with standard
- Similarly, where would this leave gRPC-web support for Flutter web applications?
- I saw some chatter somewhere that there was also a plan to do something similar there and move to use the JavaScript implementation under the hood. Are these efforts connected in some way?
- I see a substantial amount of work happening in the protobuf.dart repository happening but the wider support for gRPC and gRPC-web (at least within the Dart ecosystem specifically) seems much less clear.
- Are you able to talk at all about the future of these projects in the Dart and Flutter ecosystems?
- Specifically, in your personal opinion would I be likely setting myself up for a happy or sad future if I started moving towards a gRPC-centric approach for
client<--->serverandserver<--->servercommunications?
Thank you for the feedback! It's appreciated!
- Looking at Cronet's README I see it talks about only supporting iOS and Android platforms.
- Where would this leave traditional server based applications for example built with standard
dart compile exeand running in a container on a system like Cloud Run?
Conceptually Cronet works on the server, so in principle can be used by Dart server apps(with caveat that technology for smooth distribution of native (cronet) libraries with Dart packages is still being worked on).
To get better answer from Cronet team regarding their focus I would raise a question on https://bugs.chromium.org/p/chromium/issues/list?q=component:Internals%3ENetwork%3ELibrary
- Similarly, where would this leave gRPC-web support for Flutter web applications?
- I saw some chatter somewhere that there was also a plan to do something similar there and move to use the JavaScript implementation under the hood. Are these efforts connected in some way?
This effort is not related to ongoing grpc-web work. I see it uses Envoy, which is different tech stack from Cronet.
- I see a substantial amount of work happening in the protobuf.dart repository happening but the wider support for gRPC and gRPC-web (at least within the Dart ecosystem specifically) seems much less clear.
- Are you able to talk at all about the future of these projects in the Dart and Flutter ecosystems?
https://github.com/grpc/grpc-dart is what is currently broadly used, is reliable solution for Dart apps when it comes to gRPC and Dart. This grpc_cronet effort is an attempt to explore some ways to improve the performance. From what I know grpc is an area of active investigation (cc @mraleph )
- Specifically, in your personal opinion would I be likely setting myself up for a happy or sad future if I started moving towards a gRPC-centric approach for
client<--->serverandserver<--->servercommunications?
I think you can safely bet on using gRPC protocol for your Dart apps.