Proxies (Forward vs Reverse)
Forward Proxy
Sits in front of clients, hides client identity from the server. Common uses: corporate networks, VPNs, content filtering, and some client-side caching.
flowchart LR
Client --> FP[Forward Proxy]
FP --> Internet[Internet / Servers]
The server sees the proxy, not the individual client — identity is hidden on the requester's side.
Reverse Proxy
Sits in front of servers, hides server topology from clients. This is the role a load balancer, API gateway, or CDN edge node plays.
flowchart LR
Client --> RP[Reverse Proxy]
RP --> S1[Server 1]
RP --> S2[Server 2]
RP --> S3[Server 3]
The client sees one address; the proxy decides which real backend instance actually serves the request. When someone says "put a reverse proxy in front of it," this is what they mean: a single addressable front door that can load-balance, terminate TLS, cache responses, or rate-limit before a request ever reaches a real backend instance.
Why the Distinction Matters in Interviews
Conflating the two is a quick tell that the concept is memorized, not understood. The test: whose identity is being hidden, and from whom? Forward proxy hides the client from the server. Reverse proxy hides the server(s) from the client.
Interview Drill
Q: Is a CDN a forward or reverse proxy? A: Reverse — it sits in front of origin servers, serving cached content on their behalf and hiding which origin server actually has the data, from the client's perspective.
Cross-links
[[Load Balancing]] · [[API Gateway]]