3 ms·
Interesting bit from the FAQ: "We rely heavily on Docker and Docker Swarm for containers, orchestration and networking. Other pieces of tech we use are Consul
by zbjornson 10y ago
Interesting bit from the FAQ:
"We rely heavily on Docker and Docker Swarm for containers, orchestration and networking. Other pieces of tech we use are Consul for service discovery and gRPC with Protobuf for the RPC."
Awesome that it's using gRPC under the hood. But, I'm still missing if there's an orchestration service running somewhere that takes care of the load balancing, or if it's distributed?
"When deploying Lever, you allocate a number of servers to it. Lever can then manage resources and auto-scale services running on it - but this is only limited to the servers you have allocated to it."
It would be awesome (and critical to our use case) if it could provision instances, even if it's via a shell command manually entered into a config file. From the stack description quoted above, it sounds like it would do okay if it was coupled with an autoscaling group that does this function for now...
Finally, I love the sticky resource routing, with the use case being data sharding.
Excited to try this out.
- vladaionescu 10y agoThanks man. To answer your question about load balancing, it is made via the 'leveroshost' agent itself. Each contains a HTTP/2 proxy that routes and loadbalances traffic as needed. Each RPC goes through 2 of these agents: one on the node originating from and one on the node going to. The decision of where to send the request next (load balanced / routed) is based on information from Consul.