What is a Web Server?
A web server stores and delivers the content for a website – such as text, images, video, and application data – to clients that request it. The most common type of client is a web browser program, which requests data from your website when a user clicks on a link or downloads a document on a page displayed in the browser.
A web server might also cache content to speed delivery of commonly requested content. This process is also known as web acceleration.
Should web servers have public IP addresses?
In order to be accessed by users outside of their own network, a web server needs a public IP address. This allows visitors to visit the websites housed on the server. Though, the server could be hidden behind a proxy, or another device, in order to improve security. Most large sites will have multiple servers and a load balancer. Multiple websites could share a public IP via one web server, and the load balancer then determines which site the client request should go.
Load Balancing & Web Servers
When a load balancer is integrated, a user goes to the load balancer first, and is then directed to the correct server. The balancer determines which server to direct the request by first ensuring that any server they can choose is actually responding appropriately to requests. Then, they use a pre-configured rule to select from among that healthy pool of servers. Load balancers can improve performance and reliability by distributing the workload across multiple servers.