3 ms·
I'm not necessarily saying gRPC is the solution to everything, but I don't see why HTTP is so great? It's a protocol for transferring, primarily text over netwo
by lkramer 7y ago
I'm not necessarily saying gRPC is the solution to everything, but I don't see why HTTP is so great? It's a protocol for transferring, primarily text over networks. Most backend systems operates in binary, so serializing binary data into a text format seems to be unnecessary overhead.
- rapsey 7y agoIt is great because it has quality implementations in every language. Much like protobuffs.
- hinkley 7y agoHTTP also has a vast range of proxies, transport encodings, cryptographic layers, solutions for client/server clock skew, tracing and a whole bunch of other things like rerouting and aliasing baked in.
- unlinked_dll 7y agoOne pro of HTTP is that the methods are barebones and error codes standardized, while there are plenty of battle tested front ends for your tx/rx endpoints that might touch the service. Basically works everywhere. The con is that you can do that with the protocol of your choice directly and you don't need to bolt HTTP to whatever you're building.
- cogman10 7y agogRPC works over HTTP. That said, the http body and response are perfectly fine being binary. It's only the headers that are text based (in http 1. Http 2 turns those headers into binary as well.)
- imtringued 7y ago>It's a protocol for transferring, primarily text over networks. Who told you that? You can specify an arbitrary content type. Not just text.
- CuriouslyC 7y agoThe processor usage of serialization is almost never the bottleneck, usually it's bandwidth. Despite that, unless you're sending floats or large integers over the wire, the difference probably isn't usually worth the engineering investment over gzipped json until you're "web-scale".