Assignment 3 .pdf
Original filename: Assignment 3.pdf
Title: Microsoft Word - Assignment 3
This PDF 1.7 document has been generated by / Microsoft: Print To PDF, and has been sent on pdf-archive.com on 01/12/2016 at 17:53, from IP address 128.240.x.x.
The current document download page has been viewed 310 times.
File size: 665 KB (4 pages).
Privacy: public file
Download original PDF file
Assignment 3 Blog Post
In this blog post I am aiming to describe how web server applications and stacks have been
developed for different purposes since the first web server was invented in 1990 by Sir Tim BernersLee. This blog post contains the basic background behind different web technologies and server
applications and how the different ways that web servers are used has changed over the last 25
years. I also have a table from (insert here) that depicts the features of different web server types, I
compare these features under said table. I hope, by the end of the blog post, I will have noticed how
web server technologies are changing how we use the internet and what this means for the future of
The Internet is a network of hardware devices, which provides many information and
communication services, by allowing these devices to connect to each other using various
communication protocols. Most services used on the internet are based on the client-server model,
a distributed computing system where a client or clients communicate with a server to request data
or a service. A client communicates with the server by making a protocol specific request (like HTTP
for web transactions or IMAP for e-mail) to the server, the server then replies with the appropriate
protocol specific response. The information and data on the web servers is the fundamental
background to the World Wide Web.
A web server is program on a computer, one computer can host multiple web servers. There are
many different types of web server, the most used type is the Apache web server which has been
the most popular since 1996, and per Netcraft’s “February 2016 Web Server Survey” (1) 32.8% of all
web sites are based on web servers that run using Apache. Apache is so widely used for web servers
because of its popular web stack. A web stack is a software stack that makes a development
environment for web servers, the software in the stack is an operating system, a web server, a
database server and a programming language. The most common web stack is the LAMP stack,
stacks are normally called by some acronym relating to the software they use (LAMP = Linux,
Apache, MySQL and PHP). Another common stack is the WISA stack this one stands for Windows, IIS,
Microsoft SQL Server and ASP, which is also widely used due to the popularity of the Microsoft IIS
web server. A web server is usually successful when it is integrated into a popular web stack, Apache
could be in the LAMP stack because it supports PHP scripting and MySQL, which are also free and
contribute to the fast that the LAMP stack is so widely used.
Apache is the most widely used web server software, this is mainly due to it being free, open source
and supporting both MySQL databases and PHP scripts. PHP, Perl and Lua scripting are all able to be
used on web pages hosted using Apache servers, which is very useful Implementation using Apache
is commonly within a LAMP stack, the fact that all of these pieces of technology are free contribute
greatly to the popularity of Apache web servers. Apache has a feature called “Virtual Hosting” which
means that a web server running apache can host multiple domain names on the same server,
sharing the server’s computing power. The main use of this is shared web hosting, where customers
pay to have their websites hosted on a server. If one server can sell multiple websites it lowers the
cost. Apache also uses a reverse proxy for load balancing to distribute incoming requests to multiple
servers so the wait time is shorter.
Another software used for web servers is Nginx, it is rapidly becoming one of the most popular
software choices for constructing a web server. This is due to the fact that I can serve 10,000
simultaneous connections/clients, implements load balancing and uses FastCGI to process requests.
These features mean that a server built using Nginx is a very efficient web server. FastCGI is a
variation on the Common Gateway Interface used by Apache and many others. The difference is
FastCGI doesn’t create a new process each time a request is made it uses persistent processes to
handle these requests. This means there is less overhead because processes don’t need to be
created so frequently. The efficiency of this web server
Another web server application is Jetty, where normal web servers usually serve documents to users
Jetty is mostly used for machine to machine communication. Jetty’s main feature is the ability to
create Java Servlets, which is a Java program designed to increase the capability of the main Jetty
server. The advantage of using a Jetty server and Java servlets is the comparably fast performance
and ease of use, given prior Java knowledge. Below is a table comparing the 3 pieces of web server
software and some of their respective features.
The web server market has been dominated for the last 15 years by Apache servers, however,
recently Microsoft web server have been increasing their share of the market, and, in 2014, briefly
overtaking Apache for market share of all sites (Netcraft’s “February 2016 Web Server Survey” (1)).
Nginx is another web server application that is becoming more widely used but at a slower rate than
Microsoft. According to a survey conducted by W3Techs although 51.2% of the world’s websites are
hosted on an Apache sever and 31.8% on a Nginx server, of the top 100,000 most used/visited sites
the majority (49.1%) are hosted on Nginx servers (vs. 32.6% for Apache). This shows that Apache
probably will not continue to dominate the web server market, because some websites are opting
for their competitors despite their popularity and accessibility. Web wait time has fallen over the
years (see nginx blogpost (2) on this) as people were able to optimise their web servers and also
switch over to the faster web server framework, Nginx.
From Netcraft February 2016 Web Server Survey
Due to the fact that Nginx is constantly rising in popularity, as Apache falls, I think it’s safe to assume
that the web servers most people desire are faster and able to deal with more concurrent users.
With Cisco predicting that but the year 2020 there will be over 4.1 billion internet users and 26.3
billion networked devices and connections(4) it seems to me like more and more web servers will
want to cater to a greater number of concurrent users, so, unless another faster web server as good
as Nginx is developed, Nginx will continue to grow and become the dominant web server in the
From Nginx blogpost (2) made from Cisco statistics