Building a load balancer with concurrent patterns
When we built our server pinging application earlier in this chapter, it was probably pretty easy to imagine taking this to a more usable and valuable space.
Pinging a server is often the first step in a health check for a load balancer. Just as Go provides a usable out-of-the-box web server solution, it also presents a very clean
ReverseProxy struct and methods, which makes creating a load balancer rather simple.
Of course, a round-robin load balancer will need a lot of background work, specifically on checking and rechecking as it changes the
ReverseProxy location between requests. We'll handle these with the goroutines triggered with each request.
Finally, note that we have some dummy ...