Hacker News new | ask | show | jobs
by jeffbee 1418 days ago
Author doesn't support the case for grpc being a "failure". I wonder by what measure. It's certainly pretty popular.
2 comments

Being able to use gRPC in browsers was an explicit goal of the project, and that is impossible. gRPC-Web has to use a modified version of the protocol that has a limited feature set and performs worse for the reasons described in the article.
The lack of trailers support is not what means gRPC-Web needs to exist. It would be trivial for gRPC to support trailers-in-body like gRPC-Web does as a work around. The main problem for gRPC in the browser is the lack of HTTP/2 framing for messages which means gRPC-Web has to invent it's own framing format to make streams work.

My experience in the early days of gRPC is that they seemed fairly unwilling to consider any need for an easy upgrade path for existing people using HTTP/1.1 at all.

The author touches on this at the end:

> Focus on customers. Despite locking horns with other orgs, our team had a more critical problem: we didn’t listen to early customer feedback.

I'm glad they realise it now because lots of us warned them about this at the time.

Lets call the next version gRPC Send. then the vp can "leave" after a year or so, the project can get scrapped, and we can go back to something decent XD
I was going to post a similar comment, but looking back at the post I realised that the author is upfront about what they consider the original point of gRPC to be:

> gRPC was reared by two parents trying to solve similar problems:

> 1. The Stubby team. They had just begun the next iteration of their RPC system...

> 2. The API team. ... serving (all) public APIs at Google ... [this is not said explicitly but presumably the vast majority of API clients are web based]

As you say, gPRC is very popular at server messaging, but I suppose it can never be an API solution. So, even if gRPC is successful in general, it was not successful at its original goal (as far as this author is concerned).