Grokking the System Design Interview
Vote

0% completed

Proxies

A proxy is a server that stands between a client and another server. It receives the request, and it passes the request on.

The reason to use one is control. A proxy gives you a single place where you can see the traffic, change it, block it, or store a copy of it. You get that place without changing the clients and without changing the servers.

Hiding an address is one result of using a proxy. It is not the purpose. Almost every proxy in a real system is there to do a job: cache responses, handle TLS, block bad requests, or route them somewhere.

.....

.....

.....

Like the course? Get enrolled and start learning!
Kunal Behrunani

Kunal Behrunani

· 2 months ago

This artcile is kinda vague & seems to drift from the real idea of proxy. Throughout this artcile, it claims the idea of proxy is to anonymize the identity of a particular side (client or the server) but in reality, anonymity is a side effect of having proxy & not the original design choice. It can or even cannot (in cases not required as per business choice) help with anonymity.

Proxy is more about controlling one of the two side of the traffic i.e the client or the server.

Eg. In case of a company laptop, the aim is to control the client side. The arbitary or unbounded side is the whole internet. Use case involves client not able to access certain websites etc. In that case, a forward proxy can be deployed that shall monitor all of the outbound traffic from that client. Now, in certain

Jlsegb

Jlsegb

· 5 months ago

For anyone being confused with the diagram, like me. The internet is not actually splitting a single proxy request into 2. The internet part of the picture just shows that the request from the proxy goes over the internet. So the proxy still has to make 2 requests (for the 2 servers) in the forward proxy section.

S

Shubham Saxena

· 2 years ago

"In addition to coordinating requests from multiple servers, proxies can also optimize request traffic from a system-wide perspective. Proxies can combine the same data access requests into one request and then return the result to the user; this technique is called collapsed forwarding. Consider a request for the same data across several nodes, but the data is not in cache. By routing these requests through the proxy, they can be consolidated into one so that we will only read data from the disk once."

Didnt quite catch this. Can this be explained with a better example?

Show 2 replies

Reading Progress

0%