A proxy is a software that makes requests on behalf of a client.
- Any requests that the client makes has to pass through the proxy.The api proxy sets an abstraction between the consumers and the server and decouples them.
- All connections are established between the client and the proxy.So the services dont have to be aware of each other or interact with each other.
- It can decouple the consumers from the backend service and vice-versa.
- The server is not aware of the clients information.
- The client is aware of the final destination.
- caching stuff
- storing security keys on the server
- Rate limiting
- Logging
- Data Transformation
- ISPs use proxies to protect / restrict users from accessing websites
- Government can use them to protect sensitive information
- In the proxy configuration , the server doesn't know the client.
- In the reverse proxy configuration , the client doesn't know the server.
Eg- When we have multiple servers , the proxy communicates the request to
one of the servers . This is one of the most common use cases for a reverse
proxy : Load Balancing (eg - NGINX server)
-
Hey Node : What is api proxy
-
Hussein Nasser : Proxy vs Reverse Proxy Server Explained