Forward proxy (client-side):
- Client → Forward Proxy → Internet
- Hides client identity from servers
- Used for: Anonymity, content filtering, caching
- Example: Corporate proxy, VPN
Reverse proxy (server-side):
- Client → Reverse Proxy → Backend Servers
- Hides server identity from clients
- Used for: Load balancing, SSL termination, caching, security
- Example: Nginx, HAProxy, CDN
In system design, you'll mostly discuss reverse proxies. They sit in front of your servers and route requests.