The Internet is filled with all sorts of websites or applications that we use on a regular basis. But we hardly look into the applications or softwares that power these websites. There are many web servers, middleware applications, databases, caching software like redis/memcached, CDN etc. All these things make up an internet website & all are equally important to make an application or website work.
But we will be discussing only web servers in this article. Let’s first discuss what are some web servers that powers the inernet,
So let’s discuss these in a bit detail.
1- Apache Web server
Apache is a free and open source web server that is available on Linux operating systems as well for Microsoft Windows & for many other UNIX based systems. Some of the major features that apache boasts are,
- Reverse proxy support
- Load balancer support
- Highly scalable
- support for HTTP/2
- support for IPv6
- multiple website/directory support with .htaccess
These are only some of the features & there are plenty of more features making it a solid web server & is also the second most used web server ever now.
Currently Nginx is the market leader when it comes to web servers, it’s leading in market share for web servers. It is also a free & open source web server that is available for Linux & Windows as well. There is also a paid, enterprise version available called Nginx Plus with some additional features not available to the opensource version. But even the free version is a very robust version in itself & will satisfy the most needs of a web server.
Nginx can be used as a load balancer, reverse proxy, mail proxy or even as an http cache. Some of the features of Nginx are,
- very light on system resources,
- IPv6 support
- URL rewrite & redirection
- support to host multiple websites, IP & name based hosting
- FastCGI support, etc
Both Apache & Nginx powers about 80% of websites available on the internet.
3- Microsoft IIS
IIS or Internet Information Services is a web server created by & available on Microsoft Windows. It does not support Linux operating systems as of yet. It is mainly the choice of web servers that are using Windows as the operating system.
Apart from the usual features that other web servers provide like https support, IPv6 support, url rewrite, url redirection, it also provides following features,
- support for http/2 over tls
- Centralized management of SSL certificates
- support for SNI (Server Name Indication)
- CPU throttling
- Support for ASP.NET
- FTP support & FTP logon attempt restrictions
It is fairly good web server but has a very less market share in comparisons to other web servers like apache, nginx.
Technically, Haproxy is a very reliable & high performance TCP/HTTP load balancer but can also be used as web server. It free & open source web server application but like Ngnix, it also has an enterprise, paid version with some additional features.
Some of features for Haproxy are,
- Health checks
- support for HTTP/2
- API support
- URL rewriting
- Layer 4 & Layer 7 load balancing
- Proxy protocol support
- Multi- threading
Haproxy has a very little market share but it powers a number of high profile websites like Reddit, Twitter, Tumblr, Slack, GitHub etc.
So these are some of the web servers that powers the websites that we visit. Certainly there will be other web server softwares but these constitute the majority of the market in terms of usage & are the famous web servers that powers the internet.