A proxy makes requests on behalf of clients. A reverse proxy serves requests on behalf of servers.
Proxy vs Reverse ProxyProxies make requests for clients. This is often done to monitor traffic and implement policies that may block certain types of request. Reverse proxies fulfill requests for clients by connecting to servers. This is often done to achieve horizontal scale by publishing a single IP that maps to a large number of servers. Reverse proxies may also be used to cache responses or implement security scanning of incoming requests.
Proxy ExampleA firm configures its internal networks such that employees need to pass through a proxy to access the internet. This allows the firm to generate an audit trail and to block resources that are viewed as a security threat.
Reverse Proxy ExampleA backend for a mobile app handles requests using a load balancer that connects to instances of a server running on cloud infrastructure. The cloud instances are scaled up and down to handle load conditions. The load balancer is a reverse proxy that forwards requests to instances to distribute load. Clients view the load balancer as a server and need not be aware that requests are forwarded.
|Definition|| A service that makes requests on behalf of clients.||A service that fulfills requests on behalf of servers.|
|Pattern||Make many clients appear as one.||Make many servers appear as one.|
|Type||IT Infrastructure||IT Infrastructure|
|Common Implementations||HardwareSoftware Service||HardwareSoftware Service|
|Common Uses||MonitoringLoggingBlocking Requests||Load BalancingCachingContent DeliveryAPI GatewaysSecurity Scanning|
This is the complete list of articles we have written about networking.
If you enjoyed this page, please consider bookmarking Simplicable.
© 2010-2023 Simplicable. All Rights Reserved. Reproduction of materials found on this site, in any form, without explicit permission is prohibited.
View credits & copyrights or citation information for this page.