Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Initial Feedback #8

Open
bivens-dev opened this issue Sep 25, 2022 · 1 comment
Open

Initial Feedback #8

bivens-dev opened this issue Sep 25, 2022 · 1 comment

Comments

@bivens-dev
Copy link

bivens-dev commented Sep 25, 2022

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 exe and running in a container on a system like Cloud Run?
  • 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 <---> server and server <---> server communications?
@aam
Copy link
Collaborator

aam commented Sep 26, 2022

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 exe and 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 <---> server and server <---> server communications?

I think you can safely bet on using gRPC protocol for your Dart apps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants