News for hackers. Stuff that matters.
Re:Sample cloud-native application with microservices by Omnipresent on Thursday February 14, 2019 @10:36PM (#19168269)
Tried grpc's in a production application where one microservice had to make over a million grpc connections to another microservice. We experienced ton of memory leaks and switched over to http/json which has been working well. Implementation was done in Scalla, Akka. Curious to know if others have had similar experiences or if there is another best practice with grpc's that we're missing.
Re:Sample cloud-native application with microservices by shereadsthenews on Thursday February 14, 2019 @11:20PM (#19168432)
Obviously a million open sockets uses more memory than having a stateless http backend. However, having worked on the very largest RPC service deployment ever fielded I feel it is safe to say that there is no reason to have a million open gRPC channels.
Re:Sample cloud-native application with microservices by achiang on Friday February 15, 2019 @01:17AM (#19168855)
The problem that gRPC solves for you is versioning your messages between your services.

As your json payloads evolve, you're going to encounter pain trying to keep your services in sync, whether it comes in the form of writing parsing code to crack open payloads and do conditional error checking based on the version (and expected fields), or whether it comes operationally in how you actually deploy updates to running services.

Re:Sample cloud-native application with microservices by zepolen on Friday February 15, 2019 @01:23AM (#19168884)
That's solved by protobuf, not grpc.
Re:Sample cloud-native application with microservices by brown9-2 on Friday February 15, 2019 @06:28AM (#19170027)
...why did one service need to make a million connections to another service?