Proxy, Reverse Proxy &Load Balancer

Proxy

Proxy is a server which acts on behalf of the client and hide the information of the client from server or filter the information before pass to the actual server. Proxies are hardware or software solutions that sit between the client and the server in order to manage requests and sometimes responses

Most of us when we use company network and we cant browse everything it passes through a proxy which it filters or restricts the information, for instance, some movie sites are always restricted except some education video sites.

Benefits:-

Restricts unwanted site

Route based on the geolocation

cache

Reverse Proxy

Reverse proxy sites infront of the actual web server or web proxy server and it hides the information of the actual server from the client. Client undersatnd that the reverse proxy is the originated place.This provides an additional level of abstraction and control to ensure the smooth flow of network traffic between clients and servers.

A reverse proxy may act either as a simple forwarding service or actively participate in the exchange between client and server. When the proxy treats the client and server as separate entities by implementing dual network stacks, it is called a full proxy.

Benefits

Load balancing

It routes the traffic to its different proxy or server linked to this proxy either geo location-based, latency or weight based or heartbeat based.

Caching

The reverse proxy stores a copy of response locally. When the client (or any client) makes the same request, the reverse proxy can provide the response itself from the cache instead of forwarding the request to the backend server. This both decreases response time to the client and reduces the load on the backend server.

Logging

This gives the proper logging for the server, client , how many request response rate.

SSL interface

You can use for encryption/ decryption for request and response. Encrypting the traffic between clients and servers protects it as it crosses a public network like the Internet. By decrypting and encrypting server responses, the reverse proxy frees up resources on backend servers.

Compression

Compressing server responses before returning them to the client (for instance, with gzip) reduces the amount of bandwidth they require, which speeds their transit over the network.

Load Balancing

In distributed network all the incoming request coming from the client send among the group of server in which one particular server send the response to the client.Load balancers are most commonly deployed when a site needs multiple servers because the volume of requests is too much for a single server to handle efficiently.

Benefits

Single point of failure

Deploying multiple servers also eliminates a single point of failure, making the website more reliable. Most commonly, the servers all host the same content, and the load balancer’s job is to distribute the workload in a way that makes the best use of each server’s capacity.

Load Distribution

It prevents overload on any server, routes to the less crowded server or healthy server.

Session Persistence

Some load balancers are session persistence, which means sending all requests from a particular client to the same server.

--

--

--

https://www.linkedin.com/in/abhilashranjan/

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Multilingual Office — Understanding Office 2019/2016 Language Accessory Packs

How does coding help me?

Final Tagless seen alive

How to Host a Site With a Subdomain on GitHub Pages

How Auto Code Generator Works

Andela Learning Community(ALC) 2.0 made it possible!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Abhilash Ranjan

Abhilash Ranjan

https://www.linkedin.com/in/abhilashranjan/

More from Medium

ISTIO, Docker for windows and minikube

Simple App — Project Summary

Integration with the SAP Commerce Cloud Build APIs with Jenkins/Sonar Qube

Installing Containerized Applications on Internet-Restricted Environments