0% found this document useful (0 votes)
43 views69 pages

Unit IV

The document discusses different web server technologies including Apache HTTP Server, Microsoft Internet Information Server, Sun Java System Web Server. It also covers CGI, scalable CGI and web server APIs as methods for supporting dynamic content on web servers.

Uploaded by

AnilKarwankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
43 views69 pages

Unit IV

The document discusses different web server technologies including Apache HTTP Server, Microsoft Internet Information Server, Sun Java System Web Server. It also covers CGI, scalable CGI and web server APIs as methods for supporting dynamic content on web servers.

Uploaded by

AnilKarwankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 69

Apache HTTP Server

• Ongoing group software development effort


• Dominated Web since 1996 because it is free and performs efficiently
• Apache
• Developed by Rob McCool at University of Illinois in1994 at the NCSA
• Currently available on the Web at no cost as open-source software

E-Commerce: The Second Wave, Fifth


7
Annual Edition
Microsoft Internet Information Server
• Comes bundled with current versions of Microsoft Windows Server
operating systems
• Used on many corporate intranets
• Supports the use of
• ASP
• ActiveX Data Objects
• SQL database queries

E-Commerce: The Second Wave, Fifth


8
Annual Edition
Sun Java System Web Server
(Sun ONE, iPlanet, Netscape)
• Descendant of original NCSA Web server program
• Formerly sold under the names
• Sun ONE
• Netscape Enterprise Serve
• iPlanet Enterprise Server
• Charges a $1500-per-CPU licensing fee

E-Commerce: The Second Wave, Fifth


9
Annual Edition
Introduction
• The Web, initially static, was developed in 1990 at
CERN by Berners-Lee.
• Implementation became public domain in 1993,
Mosaic led rush to the Web.
• Static content didn’t support the applications that
were needed (online commerce, education,
communication, etc.).
Support for Dynamic Content
• The HTTP request-response cycle provides an architectural
foundation for distributed hypertext applications.
• Web servers and browsers communicate through message-passing,
browser initiated requests by URI name for resources (HTML pages,
etc.)
• Initial dynamic interaction supported by HTML forms and CGI.
A Web server reference architecture (Hassan)

Request
Analyzer

Operating System Abstraction Layer

Operating System
Access
Control
Request

Response Reception
BROWSER
Resource
Client Machine Handler

WEB SERVER
Transaction
Log
Server Machine
A reference architecture for browsers

Request
Formatter

Operating System Abstraction Layer


Operating System

Request
Analyzer
Access
Request Control
User Network
Response
Interface Interface

WEB SERVER
Server Machine

Response Response
WEB BROWSER
Renderer Analyzer

Client Machine
CGI
Request

Operating System Abstraction Layer


Analyzer

Access
Request
Control

Operating System
Response Reception
BROWSER
Resource
Handler
Client Machine

Transaction CGI
WEBLog
SERVER Interface

CGI
Server Machine Process
CGI advantages / disadvantages
• Simple, implemented on all well-known Web servers out-of-the-box.
• Combined with scripting languages are a portable solution.
• Not process efficient.
• HTML generation from within code, not providing separation
between the HTML designers and programmers.
Scalable CGI
Request

Operating System Abstraction Layer


Analyzer

Request Access
Response Reception Control

Operating System
BROWSER

Client Machine Transaction Resource


Log Handler

CGI Process Pool CGI



WEB SERVER Interface

CGI CGI CGI CGI


Process 1 Process 2 Process 3 Process N…

Server Machine
Scalable CGI advantages / disadvantages
• FastCGI is the most well-known implementation.
• Performance is very good, still better than more recent technologies.
• The usability disadvantages of CGI still apply, programmers are
responsible for everything and must know details of HTTP.
Web server APIs
Request
Analyzer

Operating System Abstraction Layer


Filter

Operating System
Access
Control
Request

Response Reception
BROWSER
Resource
Client Machine Handler

Extension
WEB SERVER
Transaction
Log
Server Machine
Web Server APIs
• NSAPI, ISAPI, Apache API.
• Very efficient since compiled extension modules
run within the Web server’s address space…
• …but also dangerous since a bug in an extension
module can crash the Web server.
• Not commonly used for applications, but for
performance reasons, most server-side
technologies that support dynamic content are
based on Web server extension modules.
Browser extension interfaces

Request
Formatter

Operating System Abstraction Layer


Operating System

Request
Analyzer
Access
Request Control
User Network
Response
Interface Interface

Helper WEB SERVER


Function
Server Machine

Response Response
WEB BROWSER
Renderer Analyzer

Client Machine
Browser Extension Interfaces
• CCI (obsolete)
• Plug-ins
• Client-side scripting (JavaScript, DOM)
• Java applets
• ActiveX
• Flash
• Rich internet applications (RIA)
• Attempts to break free from page-centered interactivity
constraints.
Interpreted Template-based Scripting

• Server-Side Includes (SSI)


• Extended SSI (XSSI)
• ColdFusion
• Server-side Java Script (SSJS)
• Active Server Pages (ASP)
• PHP
ASP
Request
Analyzer

Operating System Abstraction Layer


Access
Control
Request

Operating System
Response Reception
BROWSER
Resource
Client Machine Handler
ASP
Interpreter
(asp.dll)
WEB SERVER
Transaction
Log

ASP
Templates COM Objects

Server Machine
Scaling Up
• Middleware
• Reliability
• Throughput
• Integration
• Security
• Development
• Application servers and components
• Java
• Servlets
• JSP
• J2EE
• .NET
Client Machine Server Machine
Request
Analyzer
Access
Request Control

Response
BROWSER
WEB SERVER

Application Server Machine

Java 2, Standard Edition (J2SE)


Presentation Tier Middleware

Java Virtual Machine (JVM)


Java JavaServer Java Naming Java
Java Database
and Directory Transaction
Servlets Pages (JSP) Interface
Connectivity
Server
(JDBC)
(JNDI) (JTS)

WEB CONTAINER

Business Logic Tier Java Java Java


Messaging Connector Auth.
Service Architecture Service
EJB (JMS) (JCA) (JAAS)
Java Classes
Components

EJB CONTAINER J2EE Services and Interfaces


J2EE SERVER
Client Machine Server Machine
Request
Analyzer
Access
Request Control

Response
BROWSER
WEB SERVER

Application Server Machine

Common Language Runtime (CLR)


Presentation Tier Middleware

.NET
Active
ASP.NET Web Forms Framework

.NET Framework
Directory ADO.NET
Enterprise
(AD)
Services

Business Logic Tier Microsoft


Messaging .NET
Message
API Framework
Queue
(MAPI) System.XML
.NET Managed (MSMQ)
Assemblies
Components
.NET Framework Services and Interfaces

.NET SERVER
Web programming vs. regular programming

• Web development traditionally lagged state-of-


the-art, until J2EE.
• Approaches carried forward to the Web
• Patterns
• Tiered architectures
• Frameworks
• Persistence
• Lightweight containers
• WebMVC
Request
Controller
(Java Servlet)

Response Forward Update

View Access
Model
(JSP or other (EJB or JavaBeans)
type of template)
Web server Database
Browser
server
Server machine

App server
Database
Browser
Web server server
Server machine

Web server App server Database


Browser
server
Server machine Server machine

Web server App server App server Database


Browser (Presentation) (Business) server
Server machine Server machine Server machine
Summary Classification
Conclusions
• Infrastructure
• Scalability problem is largely solved.
• Google
• Load balancing
• Application Development
• Current methods don’t scale well for people.
• Can be many modes to deal with.
• May be able to formulate a simpler, more concise
model for Web application development.
Web Site and Internet Utility Programs
• Finger
• Runs on UNIX operating systems
• Allows users to obtain information about other network users
• Command yields list of users who are logged on to network
• Ping (Packet Internet Groper)
• Tests connectivity between two computers connected to the Internet

E-Commerce: The Second Wave, Fifth


39
Annual Edition
Tracert and Other Route-Tracing Programs

• Tracert (TRACE RouTe)


• Sends data packets to every computer on the path
between one computer and another
• Clocks packets’ roundtrip times
• Calculate and display number of hops between
computers
• Calculate time it takes to traverse entire one-way path
between machines

E-Commerce: The Second Wave, Fifth


40
Annual Edition
Tracing a Path Between Two Computers on
the Internet

E-Commerce: The Second Wave, Fifth


41
Annual Edition
Electronic Mail
• Useful feature
• Attachments
• Drawbacks
• Time spent by business people responding to e-mail
• Computer virus
• Program that attaches itself to another program
• Can cause damage when host program is activated

E-Commerce: The Second Wave, Fifth


42
Annual Edition
Unsolicited Commercial E-Mail
(UCE, Spam)
• Electronic junk mail that can include
• Solicitations, advertisements, or e-mail chain letters

• Can consume large amounts of Internet capacity

• Companies
• Now offer software to limit amount of spam

E-Commerce: The Second Wave, Fifth


43
Annual Edition
Growth of Spam as a Proportion of all
Business E-mail

E-Commerce: The Second Wave, Fifth


44
Annual Edition
Solutions to the Spam Problem
• Reduce likelihood that a spammer can automatically generate e-mail
addresses
• Control exposure of an e-mail address
• Use multiple e-mail addresses
• Content filtering strategy
• Require software that identifies content elements that indicate if message is
(or is not) spam

E-Commerce: The Second Wave, Fifth


45
Annual Edition
Solutions to the Spam Problem (Continued)

• Content-filtering techniques
• Black list spam filter
• Looks for known spammer From addresses in incoming
messages
• White list spam filter
• Examines From addresses and compares them to list of known
good sender addresses
• Challenge-response
• Compares all incoming messages to a white list

E-Commerce: The Second Wave, Fifth


46
Annual Edition
Telnet and FTP Utilities
• Telnet
• Program that allows users to log on to a computer connected to the Internet
• Telnet protocol
• Set of rules used by Telnet programs
• File Transfer Protocol (FTP)
• Defines formats used to transfer files between TCP/IP-connected computers

E-Commerce: The Second Wave, Fifth


47
Annual Edition
Apache HTTP Server
• Ongoing group software development effort
• Dominated Web since 1996 because it is free and performs efficiently
• Apache
• Developed by Rob McCool at University of Illinois in1994 at the NCSA
• Currently available on the Web at no cost as open-source software

E-Commerce: The Second Wave, Fifth


48
Annual Edition
Microsoft Internet Information Server
• Comes bundled with current versions of Microsoft Windows Server
operating systems
• Used on many corporate intranets
• Supports the use of
• ASP
• ActiveX Data Objects
• SQL database queries

E-Commerce: The Second Wave, Fifth


49
Annual Edition
Sun Java System Web Server
(Sun ONE, iPlanet, Netscape)
• Descendant of original NCSA Web server program
• Formerly sold under the names
• Sun ONE
• Netscape Enterprise Serve
• iPlanet Enterprise Server
• Charges a $1500-per-CPU licensing fee

E-Commerce: The Second Wave, Fifth


50
Annual Edition
Web Site and Internet Utility Programs
• Finger
• Runs on UNIX operating systems
• Allows users to obtain information about other network users
• Command yields list of users who are logged on to network
• Ping (Packet Internet Groper)
• Tests connectivity between two computers connected to the Internet

E-Commerce: The Second Wave, Fifth


51
Annual Edition
Tracert and Other Route-Tracing Programs

• Tracert (TRACE RouTe)


• Sends data packets to every computer on the path
between one computer and another
• Clocks packets’ roundtrip times
• Calculate and display number of hops between
computers
• Calculate time it takes to traverse entire one-way path
between machines

E-Commerce: The Second Wave, Fifth


52
Annual Edition
Tracing a Path Between Two Computers on
the Internet

E-Commerce: The Second Wave, Fifth


53
Annual Edition
Electronic Mail
• Useful feature
• Attachments
• Drawbacks
• Time spent by business people responding to e-mail
• Computer virus
• Program that attaches itself to another program
• Can cause damage when host program is activated

E-Commerce: The Second Wave, Fifth


54
Annual Edition
Unsolicited Commercial E-Mail
(UCE, Spam)
• Electronic junk mail that can include
• Solicitations, advertisements, or e-mail chain letters

• Can consume large amounts of Internet capacity

• Companies
• Now offer software to limit amount of spam

E-Commerce: The Second Wave, Fifth


55
Annual Edition
Growth of Spam as a Proportion of all
Business E-mail

E-Commerce: The Second Wave, Fifth


56
Annual Edition
Solutions to the Spam Problem
• Reduce likelihood that a spammer can automatically generate e-mail
addresses
• Control exposure of an e-mail address
• Use multiple e-mail addresses
• Content filtering strategy
• Require software that identifies content elements that indicate if message is
(or is not) spam

E-Commerce: The Second Wave, Fifth


57
Annual Edition
Solutions to the Spam Problem (Continued)

• Content-filtering techniques
• Black list spam filter
• Looks for known spammer From addresses in incoming
messages
• White list spam filter
• Examines From addresses and compares them to list of known
good sender addresses
• Challenge-response
• Compares all incoming messages to a white list

E-Commerce: The Second Wave, Fifth


58
Annual Edition
Telnet and FTP Utilities
• Telnet
• Program that allows users to log on to a computer connected to the Internet
• Telnet protocol
• Set of rules used by Telnet programs
• File Transfer Protocol (FTP)
• Defines formats used to transfer files between TCP/IP-connected computers

E-Commerce: The Second Wave, Fifth


59
Annual Edition
Link-Checking Utilities
• Link checker
• Examines each Web page and reports on URLs that are
• Broken, seem broken, or are in some way incorrect
• Orphan file
• File on Web site not linked to any Page
• Dead link
• When clicked, displays error message rather than a
Web page

E-Commerce: The Second Wave, Fifth


60
Annual Edition
Watchfire Link Report

E-Commerce: The Second Wave, Fifth


61
Annual Edition
Remote Server Administration
• Web site administrator can control Web site from
any Internet-connected computer

• NetMechanic
• Offers variety of link-checking, HTML troubleshooting,
site-monitoring, and other programs

E-Commerce: The Second Wave, Fifth


62
Annual Edition
Web Server Hardware
• Web server computers
• More memory, larger hard disk drives, and faster
processors
• Blade servers
• Placing small server computers on a single computer board,
then installing boards into a rack-mounted frame
• Virtual server (virtual host)
• Maintains more than one server on one machine

E-Commerce: The Second Wave, Fifth


63
Annual Edition
Web Server Performance Evaluation
• Benchmarking
• Testing used to compare the performance of hardware and software
• Throughput
• Number of HTTP requests that hardware and software combination can
process in a unit of time
• Response time
• Time required by server to process one request

E-Commerce: The Second Wave, Fifth


64
Annual Edition
Web Server Hardware Architectures
• Server farms
• Large collections of servers
• Centralized architecture
• Uses a few very large and fast computers
• Distributed/decentralized architecture
• Uses large number of less powerful computers
• Divides the workload among them

E-Commerce: The Second Wave, Fifth


65
Annual Edition
Load-Balancing Systems

• Load-balancing switch
• Piece of network hardware that monitors the
workloads of servers attached to it

• Assigns incoming Web traffic to server that has the


most available capacity at that instant in time

E-Commerce: The Second Wave, Fifth


66
Annual Edition
A Load-Balancing System in a Decentralized
Architecture

E-Commerce: The Second Wave, Fifth


67
Annual Edition
Complex Load Balancing

E-Commerce: The Second Wave, Fifth


68
Annual Edition
Functional Roles
• Data Storage
• Application Host
• GeoProcessing
• Spatial Data Management
• Website Host
• E-mail

You might also like