Table of contents Overview Features Virtual hosting Large file support Bandwidth throttling Server-side scripting Path translation Load limits Services Top web servers Apache web server Microsoft web server Protocols used My conclusion
Web server It is a computer program It delivers content such as web pages The primary function of a web server is to deliver web pages to clients.
A client, commonly a web browser initiates communication by making a request for a specific resource using HTTP
the server responds with the content of that resource
Otherwise display error message if unable to do so
It is not always used for serving WWW
Also be found embedded in devices such as
Serving a local network
Cont.... It is used as a part of a system for monitoring and administrating the device.
Large file support
It is for hosting multiple
domain names using a
single IP address.
This allows one machine
to share its resources such
use its resources more efficiently.
A name that identifies one or more IP addresses.
For example the domain name microsoft.com represents about a dozen IP addresses.
Domain names are used in URLs to identify particular Web pages.
For example, in the URL
the domain name is pcwebopedia.com.
Large file support
Large file support to be able to serve files whose size is greater than 2 GB on 32 bit OS
It is to limit the speed of responses in order to not saturate the network
Its to be able to serve more clients.
web server technology
its running a script directly on the web server to generate dynamic web pages.
It is usually used to provide interactive web sites
Web servers are able to map the path component of a URL into:
for static request
a local file system resource
for dynamic requests
an internal or external program name
it can handle only a limited number of concurrent client connections
usually between 2 and 80,000, by default between 500 and 1,000 per IP address
Kernel-mode vs User-mode web server
will usually work faster
it can directly use all the hardware resources it needs, such as non-paged memory, CPU time-slices, network adapters, or buffers.
will usually work slowly compared to that
Ask permission to the system to use more memory or more CPU resource
Too much Web traffic
sometimes cause abnormal traffic because of millions of infected computers
can cause high traffic because of millions of infected browsers and/or Web servers;
Internet (network) slowdowns.
that client requests are served more slowly and the number of connections increases so much that server limits are reached;
requests are served with delays
(from 1 second to a few hundred seconds);
500, 502, 503, 504 ,404HTTP errors are returned to clients
TCP connections are refused or reset before any content is sent to clients
In very rare cases, only partial contents are sent
Too much traffic
Anti-overload techniques Managing network traffic, by using : * Firewalls to block unwanted traffic coming from bad IP sources or having bad patterns. * HTTP traffic managers to drop, redirect or rewrite requests having bad HTTP patterns. * Bandwidth management and traffic shaping , in order to smooth down peaks in network usage.
Top web servers
Percentage of use
Apache web server
Playing a key role in the initial growth of the World Wide Web
In 2009 it became the first web server software to surpass the 100 million web site milestone
Apache is developed and maintained by an open community of developers under Apache Software Foundation
Cont... The application is available for a wide variety of operating systems including
Mac OS X
Microsoft Windows OS/2
Released under the Apache License, Apache is characterized as open-source software.
Common language interfaces support
Popular authentication modules include mod_access, mod_auth, mod_digest, and mod_auth_digest
Apache is primarily used to serve both static content and dynamic Web pages on the World Wide Web
Apache is used for many other tasks where content needs to be made available in a secure and reliable way
Programmers developing web applications often use a locally installed version of Apache in order to preview and test code as it is being developed.
Instead of implementing a single architecture, Apache provides a variety of MultiProcessing Modules (MPMs) which allow Apache to run in a process-based, hybrid or event-hybrid mode, to better match the demands of each particular infrastructure.
the design of Apache is to reduce latency and increase throughput
relative to simply handling more requests
Ensuring consistent and reliable processing of requests within reasonable time-frames.
Microsoft (iis) web server Execution Environment
Available to work only within the Windows environment.
With IIS 6.0 the only platform currently supported is Windows Server 2003.
Cont... it also provides a number of benefits including
greater cooperation with the host operating system
control through a variety of standard OS tools and utilities.
Apache... Execution Environment
Available on a variety of platforms, including Windows.
The redesign enables it to support a wide array of platforms in more efficient ways that lead toUnix- and Windows-specific execution models that make the best use of the OS.
Feature IIS Apache Independent Request Handler Yes Yes (limited) Multiple Process Request Handlers Yes Yes Thread Support Yes Yes (on a suitable OS)
The HTTP is used by web servers to communicate web pages to web browsers.
HTTP is used when your browser connects to a web server, requests a web page from the server, and downloads the page.
It is the common standard that enables any browser to connect to any server, anywhere in the world .
I can run the Apache web server on Windows XP and also in linux environment.
If i am going to use PHP or Perl for web sites,then Apache web server is best one because It supports both the languages