Psychz - Babu
Votes: 0Posted On: Sep 03, 2019 11:31:37
To understand the term Reverse Proxy, we must first know what is a Proxy server and other related terms to it. Let us start with understanding the Proxy server and the importance of it.
Proxy servers are the intermediate servers that are placed between the user and the websites to achieve anonymity. When you try to access a website through a proxy server, your request goes to the proxy server which then forwards it to the website. For the website, the request seems to originate from the proxy server and you are completely hidden from it. This is called forward proxy.
On the other hand, the server sometimes needs to achieve anonymity to enhance their security. In this case, the server installs the proxy server that appears to be the destination for the user. This restores the anonymity of the user. Such a process is called reverse proxy. The difference between both the proxies is minor but one must understand the importance of it. Easy way to remember the difference is that a forward proxy sits in front of a client and ensures that the server does not communicate directly with the client. On the other hand, a reverse proxy sits in front of an origin server and ensures that no client ever communicates directly with that origin server.
Uses of Reverse Proxy
Better Security
With the help of Reverse Proxy, your website can easily maintain anonymity by hiding the IP address of the origin server. That way, it is difficult for the attacker to target your website using a DDoS attack. Instead, it will only target the proxy server which can have higher security to deal with such attacks.
Better performance using Caching
Using a proxy server, it can cache the data (temporarily) allowing the user to access the content from proxy server which is local to him resulting in a much faster response.
SSL encryption
Using a reverse proxy, you can configure it to decrypt all incoming requests and encrypt all outgoing responses, allowing more resource and bandwidth to the origin server.
Load balancing
You can use a proxy server to decide and route incoming traffic to lesser busy/occupied servers to balance the load, thereby improving overall user experience and helping ensure high availability. Reverse proxies can also act as a failover solution in the event where the origin server goes down, by rerouting traffic to ensure continued site availability.
Is Reverse proxy same as Load Balancer?
Both the application may perform or sound the same. But in theory, they serve differently. The easy way to understand how they are different is to understand their usage.
Load Balancing
This is used where there are many servers required to serve a website due to high incoming traffic which makes it difficult for the server to handle efficiently. This also improves the uptime of the website since the traffic can be diverted to the next closest server in case of anyone server failure. Another useful functionality of Load balancer is that it always redirects request from a particular user to the same server. This proves highly beneficial to eCommerce client.
Reverse Proxy
Reverse Proxy is good even when there is only one server. It improves security by hiding the IP of the origin server. This makes it difficult for the attacker to target your website using a DDoS attack. Instead, it will only target the proxy server which can have higher security to deal with such attacks. It also improves the performance of the website because of Caching and SSL Encryption (read 'Uses of Reverse Proxy' section above).