
Golang – Level 7 Load Balancer and Cache - ejcook111
https://github.com/CoderCookE/goaround
======
ejcook111
Looking to get some feedback and suggestions for further development.

~~~
volument
Looks interesting. Can you share some more background: why this is a good
thing? When should I use this in place of haproxy/nginx etc.

Thanks!

~~~
ejcook111
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](https://github.com/dgraph-io/ristretto) is a super compelling
high performance cache, that I was able to leverage for this.

