Web servers facilitate connections between different Internet users, acting as the backbone of the Internet and allowing webpages to be viewed across the globe. A couple of widely-used definitions confirm this:
- A web server is a computer that stores websites on the Internet and delivers web pages to viewers upon request.
- A computer on which a web site is hosted and a program that runs on such a computer.
Webpages, usually written in HTML (HyperText Markup Language) and accompanied by images, videos and various other files, can be made available at all times only when stored on a continuously connected computer. The device then functions as a web server by showing the content to all programs that request it. It is vital that the server is set up properly as part of the global web domain name system and has been assigned a permanent IP address as well as being in the global directory of domain names; otherwise client web browsers will not be able to locate it.
Although a web server is technically hardware, web server software is needed to carry out all the many operations needed to meet global web standards. When an Internet user follows a link or enters a URL, the system translates the URL into an IP address, which in turn corresponds to a physical server. There the request is received and the web program searches for and then sends off the requested files. Older users of Microsoft Internet Explorer will have noticed the bottom bar which displayed these processes: “Sending request” and “Awaiting reply”, while pondering why it took so long. Nonetheless, the HyperText Transfer Protocol (HTTP) has set out the rules of client-server communication to ensure maximum speed and efficiency.
As anyone who has posted in a forum knows, web servers can receive content as well as deliver it. There are a huge range of applications that have opened up to the world as a result, from simple contact forms to full blown ecommerce on sites like Amazon as well as critical personal applications like online banking or submitting tax returns.
Uses of web servers include:
- Hosting web pages – by far the most common use
- Gaming – numerous games have multiplayer modes, some solely based on online play – MMOs and MMORPGs, and require servers to connect different players
- Video streaming from sites like www.youtube.com
- Enterprise application – corporations and institutions have different uses for a private network – from work submission to information sharing and planning.
The most popular Web Servers
Apache. The most popular web server since 1996 which runs 70% of all websites, Apache has been developed by a group of volunteers who coordinate their plans and efforts over the Internet. Their mission statement is to provide “a robust, commercial-grade, featureful and freely-available source code implementation of an HTTP (Web) server.” Because of this, users are encouraged not only to use but also to contribute to the project by reporting problems, suggesting solutions or giving constructive feedback. The Apache web server project, along with many others, is managed by the Apache Software Foundation, which offers “organizational, legal, and financial support” to “develop enterprise-grade, freely available software products”. Individual members propose changes to the code and the core members vote on these propositions.
The Microsoft Internet Information service (IIs). A professional solution for different needs, Microsoft IIs offers a range of functions and benefits, which however come at a greater price compared to the open source alternatives. This cost explains why only 15% of websites utilize the software. The core advantages, as outlined here, are choice of hardware and software; control over different websites with delegated management and comprehensive administrative options; reliability of the web infrastructure, caching and compression, as well as thorough diagnostic tools; and security though server protection and access control. “hi5”, a popular gaming site, utilized Microsoft’s technology to improve the experience of its internet users and greatly reduce the server costs. Other advantages include the kind of service and support that comes with paid applications and services.
nginx. Pronounced as “engine x”, nginx is “a free, open-source, high-performance HTTP server and reverse proxy”, according to its developer Igor Sysoev. Having been developed in 2004, it now boasts around 22.2 million active sites, or 10-12% of all websites. The web server software is known for its simple configuration, rich feature set, stability and high performance. Its functions include support for multiple request and connection limits, reduced memory consumption, consolidation of multiple simultaneous requests, etc. Having attracted $3M in funding, the company will continue to power some of the busiest websites like Zappos, LivingSocial, Facebook, Groupon, Dropbox and WordPress.
Apache Tomcat. A small web server design to host “servlet and JSP scripts”. Despite its lower abilities compared to its big brother, the Apache HTTP, it can function as a standalone server.
Lighttpd. Pronounced lighty, this application is speedy, secure, and flexible, and has an Open source license. It places emphasis on reduced CPU and memory usage so it can relieve servers with overload problems.
Oracle Web Tier. “Oracle Web Tier hosts Web pages (static and dynami) and provides …. clustering, load balancing, and failover features”. Components of the program include Oracle iPlanet Web server and proxy server – a single infrastructure to Web technologies, solving congestion and slow response; a Web Cache – the content-aware accelerator; and the HTTP Server, based on Apache and providing a framework for hosting.