This is a series of articles about Golang's HTTP capabilities. I pry into Golang's http module, try to figure out wtf is going on, and foolishly try to create my own Reverse Proxy.

Read these in order to follow along!

VI. My Own Reverse Proxy

We'll start to create our own Reverse Proxy, onto which we'll eventually be adding a bunch of features.

VIII. Multiple Listeners

So far we've just listened on port 80 for connections. Let's allow our proxy to listen on any port, and support TLS connections.

IX. Graceful Shutdown

Our proxy isn't very graceful. If we turn it off, it cuts off all current connections. But Go handles this for us! We just need to orchestrate it. Let's see how.

X. Load Balancing

Remember when I called a reverse proxy "basically just a load balancer"? Ours doesn't balance any load. Let's fix that!

More articles coming!