Web servers
#1

full report
Reply
#2
[attachment=13200]
Introduction to
Web Servers
Web Server

Web Server is
A computer that runs a computer program
that is responsible for accepting HTTP requests from clients, which are known as web browsers
Serving them HTTP responses along with data contents, which usually are HTML pages and linked objects (images, etc.).
Web servers are also called
Web Host
a HTTP daemon when it offers only one application ie. hosting HTTP web sites.
Example Tomcat Apache Server
Linking the Internet to the Web Server
A browser has a Client Socket
A server has a Server Socket at the port for accessing website pages.
A port supports a virtual connection called a socket.
Each socket has an IP address and a port number
The Big Picture
Requirements for a Web Server Computer System
Must have a multitasking operating system
Sufficient memory space
Must have good bandwidth
Must provide a large set of services
Must have management tools for the web master.
Must support web casting
a media file distributed over the Internet using streaming media technology.
Which is “broadcasting” over the Internet.
Must support web caches
is the caching of web documents (e.g., HTML pages, images)
Done in order to reduce bandwidth usage, server load, and perceived lag.
A web cache stores copies of documents passing through it
subsequent requests may be satisfied from the cache if certain conditions are met.
Must support backend databases
Common features of Web Servers
HTTP: Handling of static content
every web server program operates by accepting HTTP requests from the client, and providing an HTTP response to the client.
The HTTP response usually consists of an HTML document, but can also be a raw file, an image, or some other type of document (defined by MIME-types).
If some error is found in client request or while trying to serve it, a web server has to send an error response which may include some custom HTML or text messages to better explain the problem to end users.
Logging:
usually web servers have also the capability of logging some detailed information, about client requests and server responses, to log files.
this allows the webmaster to collect statistics by running log analyzers on log files.
Error Logging :
Server error – when system runs out of memory etc.
Not found – when a requested document cannot be loaded
Forbidden – when server rejects a permission to access the requested document
Unauthorized – when a requesting client fails to send the correct user name and password
Expired Certificate – when SSL or HTTPS is in use.
Common Features of Web Servers
Authentication

optional authorization request (request of user name and password) before allowing access to some or all kind of resources.
Handling of dynamic content
by supporting one or more related interfaces (CGI,, JSP, PHP, ASP, ASP .NET etc.).
HTTPS
support (by SSL or TLS) to allow secure (encrypted) connections to the server on the standard port 443 instead of usual port 80.
Content compression
to reduce the size of the responses (to lower bandwidth usage, etc.).
Virtual hosting
Is a method that web servers use to host more than one domain name on the same computer, sometimes on the same IP address
Large file support
to be able to serve files whose size is greater than 2 GB on 32 bit OS.
Bandwidth throttling
to limit the speed of responses in order to not saturate the network and to be able to serve more clients.
Path Translation
Web servers are able to map the path component of a Uniform Resource Locator (URL) into:
a local file system resource (for static requests);
Or an internal or external program name (for dynamic requests).
Load Balancing
Ability to balance simultaneous user requests
Path translation
Web servers are able to map the path component of a Uniform Resource Locator (URL) into:
a local file system resource (for static requests);
Or an internal or external program name (for dynamic requests).
Example :
Consider the following URL as it would be requested by a client:
http://examplepath/file.html
The client's web browser will translate it into a connection to example.com with the following HTTP 1.1 request:
GET /path/file.html HTTP/1.1 Host: example.com
The web server on example.com will append the given path to the path of its root directory.
The web server will then read the file, if it exists, and send a response to the client's web browser.
The response will describe the content of the file and contain the file itself.
Process, Thread, Daemon Process
• Process:
An instance of an application in memory and is in executable state.
• Thread:
Basic unit of program execution
They are more memory efficient than processes because they share common memory space.
– An independent code path within your program
Example: MS Word – Spelling and Grammar check
– Servers rely on threads for multi-processing
• Daemon process (Background Process):
Starts when OS starts up
– They cannot be terminated by any user process
– In Unix, runs typically with either ‘root’ or specific user-id created for the daemon process
– Windows NT equivalent: Windows Services
– Servers are typically implemented as a Daemon process
Working of a Web Server
Developers role in Static Content retrieval
Setting up a website with static content
Choose from a variety of Web Servers
Examples of Web Servers:
1. Apache Web Server (Open Source)
2. Microsoft Internet Information Server (Also known as IIS)
3. iPlanet Web Server (Formerly Netscape)
The user has to install the Web Server software and configure it.
Typical configuration parameters are:
1. The port on which the web server operates
2. Web Server Root – The folder from which the Web server has to serve content
3. Thread Pool size and other performance parameters
4. The mapping of services to physical executables or libraries etc.
Developers role in Static Content retrieval
Developing Content
– Create HTML files
– Create JPEG or GIF images
Domain Name/Server Name registration (if required)
Registering with Domain Name Providers (Internet)
Sometimes registering within the organization using DNS (Intranet)
Debug and Test
Web Applications
First Web Servers allowed users to share static content
To enable dynamically generated content, special extensions are needed
CGI Scripts
The common gateway interface (CGI)
is a standard way for a Web server to pass a Web user's request to an application program
& to receive data back to forward to the user.
<form method="POST" action="http://mybizcgi-bin/formprog.pl">
Server Side Scripting Languages include
ASP
ASP 2.0 provided six built-in objects: Application, ASPError, Request, Response, Server, and Session. 
COM enables ASP websites to access functionality in compiled libraries such as DLLs.
Web pages with the .asp file extension use ASP, although some web sites disguise their choice of scripting language for security purposes
Pages with the .aspx extension use compiled ASP.NET 
Web Applications
Server Side Scripting Languages include
Java via Java Server Pages (*.jsp)
Is a high-level abstraction of Java servlets.
JSP pages are loaded in the server and operated from a structured special installed Java server packet called a Java EE Web.
Perl CGI (*.cgi, *.ipl, *.pl)
Is a high-level, general-purpose, interpreted, dynamic programming language.
Is a CGI scripting language, in part due to its parsing abilities.[6]
PHP (*.php)
Is a general-purpose scripting language originally designed for web development to produce dynamic web pages.
It is embedded into the HTML source document and interpreted by a web server with a PHP processor module, which generates the web page document..
Working of an Web App
Developer’s Role in Dynamic Content retrieval
The user has to install the Web Server software and configure it. Typical configuration parameters are:
1. The port on which the web server operates
2. Web Server Root – The folder from which the Web server has to serve content
3. Thread Pool size and other performance parameters
CGI Gateway configuration:
The developer has to configure the folder under which the CGI applications reside in the web server’s configuration file.
The folder name, as a convention is usually named ‘cgi-bin’.
This folder typically resides under the ‘Web Server Root’ in the folder hierarchy.
Additional modules are to be configured if the web server needs to route certain dynamic content generation requests to an Application server.
Developer’s Role in Dynamic Content retrieval
• Develop Static content
Create HTML files
Create JPEG or GIF images
Static HTML is required even in some applications for UI and presentation purposes
Develop Forms in HTML
Develop CGI Applications
Write code to read query parameters and to generate HTML dynamically on stdout (and DB queries if any)
If using advanced server side technologies like JSP/ASP, develop JSPs or ASPs to generate content dynamically
• Domain Name/Server Name Registration (if required)
• Debug and Test
Examples of Web Server
Tomcat Apache Server is popular for the following reasons
1. Freely available
2. Robust
3. Full of features for Servlets
Apache Tomcat is the servlet container that is used in the official Reference Implementation for the Java Servlet and JavaServer Pages technologies.
The Java Servlet and JavaServer Pages specifications are developed by Sun under the Java Community Process.
Apache Tomcat is developed in an open and participatory environment and released under the Apache Software License.
Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations
Examples of Web Server
Internet Information Services (IIS)
Formerly called Internet Information Server)
Is a set of Internet-based services for servers using Microsoft Windows.
It is the world's second most popular web server in terms of overall websites, behind Apache HTTP Server.
It served 37.13% of all websites and 38.23% of all active websites
The servers currently include FTP, SMTP and HTTP/HTTPS.
Setting up the website
1 – Theme
Stick to a single theme, or a group of very related themes.  
2 – Domain Name
Think up a name, and check if [thatname].com is taken.
Your site title MUST be the same as your domain name.
Keep it short
Make it memorable
Make it include your keywords
 3 – Branding. A name that sticks.
Choose a name that's part functional, part creative.
Choose striking site design and imagery to go along with your site name.  
4 – Google
Google is by far the largest search engine and will probably provide you with most of your visitors.
The higher you are in Google's rankings, the more people will find your site.
Google ranks sites by relevancy, and by their PageRank. PageRank is a number between 0 and 10 that Google calculates, based on the number of links that page link to a site. (If there are lots of links pointing to a site, it's probably a good site.)
Approach high-PageRank sites in your topic, and ask to exchange links with them.
More incoming links = Higher PageRank = Higher Ranking in Search Results = More visitors find your site
Setting up the website
5 – The Open Directory Project
Once your site is established, and has some content on it, submit your site at dmoz.org - that's the Open Directory Project.
It's a directory of sites, and it feeds many search engines.
6 – Keywords & Content
Once you've done all this, and established your site, it's just a matter of getting incoming links and writing new pages for your site.
The more pages your site has, the more likely they are to turn up in Google searches.
7 – Selling Products on Your Site
Make your site 95% high-quality, free information, and only 5% saleable items.
The free information will be picked up by search engines, and will draw visitors to your site.
The free information will also help build visitors' confidence in your site, thereby increasing the chance that they'll buy something.
You'll sell far more this way than if your site is 100% saleable items.
8 – Advertising
If you just keep writing new pages, and gaining links from other sites, you'll quickly build up a steady stream of visitors.
With advertising on your site, you can start to make money out of each of these visitors.
Desirable features of a Portal
A portal should support the following desirable functions and features:
Allowing different information- and service-providing departments to set up and update their own information and services
Should be tailored specifically for different user groups according to the common user profiles (such as grades, departments associated, etc.) and the specific needs of these user groups at specific times.
Presenting automatically the information and services that a user would need according to his profile at the appropriate time.
Allowing a user to select the information and services that are his interests and to customize their presentation.
Setting up information and services from users' perspective rather than from the angle of convenience of the services providers.
Supporting the "Single-sign-on" feature so that a single sign-on step would enable the user to gain access to the different information resource and services that are supported by different application systems provided by different departments. 
Performance of Web applications
• Scalability
The ability of an application (or server) to perform without degradation in Quality of Service as the load or demand increases
– Tune up and optimize code to reduce turnaround time for each request
- Tune SQL Queries
- Use Database Connection Pools
- Tune the server (use optimum thread pool size)
- Caching
– Increase memory capacity
– Increase number of CPUs and Increase the speed of CPUs
– Increase hard-disk capacity (Marginal impact)
– Go for multiple servers
– Load balance the servers
Performance of Web applications
Load
Every request serviced by the server amounts to some amount of load in terms of CPU time on the server side. As number of concurrent users increase, load also increases
- Speed of CPU(s) in the server
- Number of CPU(s) in the server
- Memory capacity of the server
- Hard disk space of the server (Marginal impact)
- Amount of time CPU of the server spends (Turn-around time) for each request
Types of Load Balancing Schemes for Web Servers
– DNS Load Balancing (Round Robin Type)
– Hardware and Software Load balancing
– Distributed Content (Among Hosts)
– Distributed Content (Among Providers)
Performance of Web applications
Reply

Important Note..!

If you are not satisfied with above reply ,..Please

ASK HERE

So that we will collect data for you and will made reply to the request....OR try below "QUICK REPLY" box to add a reply to this page
Popular Searches: servers hardware, blade servers ppt, cgi astrology, efficient retrieval of files from cluster based web servers 2012, security servers credit union, types of security servers, efficient retrieval of files from cluster based web servers,

[-]
Quick Reply
Message
Type your reply to this message here.

Image Verification
Please enter the text contained within the image into the text box below it. This process is used to prevent automated spam bots.
Image Verification
(case insensitive)

Possibly Related Threads...
Thread Author Replies Views Last Post
  Web based remote device monitoring harini 5 2,982 12-03-2016, 01:50 PM
Last Post: seminar report asees
  Development of a web-based Recruitment Process System for the HR group for a company slim silesh 2 3,761 24-03-2013, 12:18 AM
Last Post: Guest
  Request for Web Based Stationery management system project fkachala 2 2,774 15-11-2012, 05:52 PM
Last Post: Guest
  blood donor central database and web potral 0 1,594 10-03-2012, 12:56 PM
Last Post: Guest
  web browser imran01k 1 1,145 02-03-2012, 12:16 PM
Last Post: seminar paper
  Record Matching Over Query Results from Multiple Web Databases sachin1091 1 1,911 25-02-2012, 09:59 AM
Last Post: seminar paper
Exclamation web based school administration system imaanum 1 1,556 20-02-2012, 04:48 PM
Last Post: seminar paper
  offline web application Suppys 1 989 20-02-2012, 02:30 PM
Last Post: seminar paper
  web based sms push mechanism varun1404 1 1,121 18-02-2012, 04:40 PM
Last Post: seminar paper
  personalizing web directories with the aid of web usage data krishstrings 0 809 29-01-2012, 06:29 PM
Last Post: krishstrings

Forum Jump: