The hope is eventually for this to be something people could use in a production environment, obviously there is some work to do on that front, which is one of the reasons I'm trying to solicit some feedback about what this current implementation is missing.
Without going into specifics about other load balancers the goal here was to create something that is lightweight and easy to standup. I've found the configuration of a lot of other load balancers to be a bit burdensome, especially with regards to dynamically adding and removing backends or cache control. Also I think there is some appeal to having a single binary process that can be easily built to run in a variety of environments. I thought GoLang, because of its concurrency model and channels would be a good way to create a reliable stable process. Also https://github.com/dgraph-io/ristretto is a super compelling high performance cache, that I was able to leverage for this.
3 comments
[ 3.0 ms ] story [ 18.0 ms ] threadThanks!
Without going into specifics about other load balancers the goal here was to create something that is lightweight and easy to standup. I've found the configuration of a lot of other load balancers to be a bit burdensome, especially with regards to dynamically adding and removing backends or cache control. Also I think there is some appeal to having a single binary process that can be easily built to run in a variety of environments. I thought GoLang, because of its concurrency model and channels would be a good way to create a reliable stable process. Also https://github.com/dgraph-io/ristretto is a super compelling high performance cache, that I was able to leverage for this.