Web Servers

What is a web server?

A web server is a computer that serves up/delivers/sends web pages. All web servers have unique IP addresses and usually a domain name. Any computer can be turned into a web server by installing the proper software and connecting to the internet.

Learn More about Web Servers

What "protocol" does it speak?

Usually HTTP via SSL so HTTPS is the normal protocol for web servers.

Apache

give a brief history (who started it?)

Developed by 8 people via an email list designed just for this purpose, they traded patches with one another, and the name was created by the working title of ‘a patchy server’ or so they say. The first real version was released in April 1995 to the public. In December of that year, the 1.0 version was released and it quickly became the most-used web server. The Apache Foundation was created in June 1999 and became a certified non-profit. The first ApacheCon was held in March 2000, and version 2.0 was released at the end of the event. It is currently the number 1 server service.

link to its home page

Apache.org

what are its strengths and weaknesses?

Strengths:
  • Open Source
  • Free
  • Multi-Platform Support
  • Popularity
Weaknesses:
  • No Apache Support
  • Runs best on Linux
  • Runs fastest on Linux, if you want to use NT you should choose Microsoft Web Server.

how is it used in modern development

It is used in conjunction with services like Django for dynamic web content and Ruby on Rails to create applications.

Microsoft IIS

give a brief history (who started it?)

Originally created as a research project at the University of Edinburgh it was distributed as freeware. Because it wasn’t able to scale sufficiently to accommodate the increasing volume, Microsoft was forced to develop it’s own version. Almost all versions of IIS were released with a version of Windows. The most recent stable version, 7.5, was released in 2009. It is currently the number 3 most popular server solution.

link to its home page

IIS.net

what are its strengths and weaknesses?

Strengths:
  • Microsoft product
  • Comes free with NT
  • Limits bandwidth
  • Crash protection
Weaknesses:
  • Limited to NT-based systems
  • Closed source
  • Microsoft's proprietary information

how is it used in modern development

sites like wordpress and drupal use this server because it is powerful and flexible. It is also a popular choice because it’s scalable and offers application isolation.

NGINX

give a brief history (who started it?)

Pronounced Engine Ex, the concept was created in 2001, development started in 2002, and it was launched to the public in 2004. The goal was to provide a modern web platform which would serve the needs of fast growing internet based businesses. It is open sourced. Nginx, Inc. is the commercial organization formed in July, 2011 by Igor Sysoev, the original author of NGINX. It is currently the 2nd most popular server on the web; behind Apache and before Microsoft IIS.

link to its home page

Nginx.com

what are its strengths and weaknesses?

Strengths:
  • Small – its fast and lightweight
  • Outstanding Documentation
  • Simple Configuration
  • Event driven architecture - excellent scaling
  • Stable
  • Open Source
Weaknesses:
  • Support issues
  • Lacks type interpretation

how is it used in modern development

It is used by busy websites, like Facebook, Groupon, and Zappos to deal with scaling issues, overcome performance constraints, and maintain performance with concurrent connections.

Lighttpd

give a brief history (who started it?)

Pronouced Lighty, Lighttpd is another open sourced web server software. It was a concept in 2003, as the author, Jan Kneschke, was completing a thesis and writing his documentation. Addressing the c10k problem, introduced by Dan Kegel, it took 2.5 years of development before the server was created. It was designed as a single process and single thread non-blocking I/O. Within a few months, it was serving files faster than Apache. For most purposes, anything you can do in Apache, you can do in Lighttpd.

link to its home page

LightTpd.net

what are its strengths and weaknesses?

Strengths:
  • Security
  • Speed
  • Compliance
  • Flexibility
Weaknesses:
  • Fewer Features
  • Poor Dynamic content

how is it used in modern development

Today, it is used by YouTube and Meebo, along with other high volume sites who need fast and secure web servers which can be counted on to comply with others and be flexible.

Node.js

give a brief history (who started it?)

Node.js was created in 2009, by Ryan Dahl, and it was sponsored by his employer, Joyent. It is another event-driven I/O but it is uniquely asynchronous to minimize overhead and maximize scalabilty. It consists of Google’s V8 Javascript engine along with several built-in libraries. It is executed in a server-side Javascript application instead of a web-browser unlike most Javascript programs. The most recent version was released in March 2012.

link to its home page

NodeJS.org

what are its strengths and weaknesses?

Strengths:
  • Better evented/concurrency model for high traffic applications
  • Code re-use between client/server
  • open source and available on github
Weaknesses:
  • Unstable API
  • Lack of a standard library
  • Lack of libraries in general
  • It's not battle-tested
  • Static Files

how is it used in modern development?

Companies like Ebay, LinkedIn, and Yahoo! Are using node.js for real-time applications, locking, concurrency, scalability, and development language, to name a few benefits.