Web_App_Servers

advertisement
Comp2513
Web/Application Servers
Daniel L. Silver, Ph.D.
Objectives
To cover basic material on HTTP and Java
Application Servers
 To introduce J2EE - a more powerful
middleware
 To discuss the leading application servers
on the market

2002
Daniel L. Silver
2
Outline
The Apache HTTP server
 Java application servers
 The need for more powerful middleware
 J2EE
 A comparision of the leading application
servers on the market

2002
Daniel L. Silver
3
Evolution on the Web
Processes
Functionality
Transactions
App.
Servers
Web-enabled
applicatons
Interactivity CGI Servers
Dynamic web pages
Publishing HTTP Servers
Static web pages
Time or Maturity
2002
Daniel L. Silver
4
The Apache HTTP Server

What is unique about the development of Apache?
See www.apache.org
– What other software system shares this characteristic?




First created in 1995 by Rob McCool, NCSA
Survey says: 63% of the HTTP server market
Available for Unix, Linux, Windows (NT, 98)
Homework: Where did it get its name?
2002
Daniel L. Silver
5
The Apache HTTP Server

Architecture:
– Modular in nature
– Promotes slim and simple configurations
– Modules can be compiled and loaded as needed such as
» Core - core apache features – required!
» mod_access, mod_auth - administration of host and user group
access
» mod_action, mod_cgi - Action on requested CGI script files
» mod_asis - “as is” delivery of certain file types (e.g. *.txt)
» mod-alias - Access to directories not in the apache root
» mod_usretrack -User tracking via cookies
2002
Daniel L. Silver
6
Apache HTML Processing
Client
http://eagle.acadiau.ca/store15/index.html
HTTP
admin
Browser
Internet
Apache
HTTP Server
http/https
../store15/index.html
2002
Daniel L. Silver
7
Apache CGI Processing
Client
http://eagle.acadiau.ca/store15/cgi-bin/Hello.cgi
HTTP
admin
Browser
Internet
http/https
Apache
HTTP Server
mod.CGI
../store15/cgi-bin/Hello.cgi
2002
Daniel L. Silver
Unix
Op. sys.
8
Java Application Servers


Application servers were created originally to field
multiple simultaneous CGI requests, the divide
and conquer approach
Java servlets were introduced by Sun as a method
of providing the benefits of server-side processing
while taking advantage of many great Java
characteristics:
–
–
–
–
–
2002
Developers new the langauge
Simple to understand
There were lost of objects and methods already written
Code was portable to many different servers (JVM)
Faster than CGIs
Daniel L. Silver
9
Tomcat Java Servlet Processing
http://eagle.acadiau.ca/store15/servlet/FirstServlet
Client
Tomcat
admin
Browser
Internet
HTTP Server
Tomcat
Java App.
Server
Java Bean
FirstServlet.class
2002
Daniel L. Silver
10
Tomcat JSP Processing
Client
http://eagle.acadiau.ca/store15/index.jsp
E-Comm DB
Browser
Internet
Tomcat
Java App.
Server
HTTP Server
Class DB
../store15/index.jsp
2002
Store category
or product data
Java Bean
Pointer to internal .class file
for index.jsp
Daniel L. Silver
11
The E-Business Architecture
Partners, Suppliers
PM
SupCM
Employees
KM
ERP
Stakeholders
Middleware
A new era of
Cross-Functional
Integrated
Applications
SellCM
CRM
Customers, Distributors
2002
Daniel L. Silver
12
Constructing the E-Business
Architecture

A New Era of Cross-Functional Integrated
Applications
–
–
–
–
–
CRM = Customer Relationship Management
ERP = Enterprise Resource Planning
SupCM = Supply Chain Management
SellCM = Selling Chain Management
PM = Procurement (Operational Resource)
Management
– KM = Knowledge Management (DW/Analytics)
– Middleware = Integration Applications
2002
Daniel L. Silver
13
The Need for More Powerful
Middleware



More efficient use of server resources
Flexibility - ever changing products, technology,
business process
Multi-channel interfaces has forced separation of:
– Customer (web) interface aspect
– Enterprise (application) interface aspects



End-to-end transaction integrity required
Security – a primary concern
Integration – ability to integrate with other and
often older computer systems
2002
Daniel L. Silver
14
Java has Risen to the Challenge

Why Java?
–
–
–
–
Object-oriented
Platform independent
Network aware
Multi-threaded (easy to develop applications
that do two or more things at a time)
– Relatively fast learning curve
– Faster development times
2002
Daniel L. Silver
15
J2EE

In 1999, Sun Microsystems announced a
comprehesive Java based middleware
architecture and technolgy called Java 2
Enterprise Edition or J2EE:
– Full server side Java standard development
platform
– Solid backend for many wireless applications
– Solid infrastructure with many commonly used
components (Java Beans … think objects)
2002
Daniel L. Silver
16
J2EE

J2EE provides:
– EJB – Enterprse Java Beans, handle critical
tasks of E-commerce such as transactions and
DB access
– JSPs – Java Server Pages, brings flexibility to
user interfaces
– Java Servlets provide link between user
interface and backend enterprise applications
– JDBC – Java Database Connectivity, standard
interface for access to relational DB
2002
Daniel L. Silver
17
Common Characteristics of
Application Servers







Connectivity to various applications and DBs on
various operating environments and hardware
Provides an integrated IDE for all aspects
Support for reusable distributed components
(CORBA, COM, EJB)
Performance management (load balancing,
caching, monitoring)
Robust and reliable software – redundancy,
backup/recovery
User-friendly administrative, diagnostic tools
Strong security framework
2002
Daniel L. Silver
18
3-Tier Architectural of Modern
Web Servers
ERP
Client 1
Browser
Client 2
HTTP
TCP/IP
Server A
Internet
HTTP
Server
Browser
Server B
2002
App.
Server
Database
Server
URL index.html prog2.class
prog1.cgi
Bank
Server
Daniel L. Silver
19
The Major Application
Server Providers
BEA – WebLogic (7.0) - 24% of market
 IBM – WebSphere (4.0) – 33%
 Oracle – Oracle(Ias (1.0) – 12%
 SUN – Sun ONE (was iPlanet) – 8%
 Macromedia – ColdFusion (MX)

2002
Daniel L. Silver
20
Comparison of Major
Application Servers


Refer to class handout
BEA - WebLogic (7.0)
–
–
–
–
–
–
–
2002
The most widely used server on the market
Very scalable
Bridges cap between SUN Java J2EE and MS COM
Robust features, great security framework
Support for wireless mobile clients (J2ME)
Maintenance and support is managable
Number 1 with many commercial users
Daniel L. Silver
21
Comparison of Major
Application Servers

IBM – WebSphere (4.0)
– Java technology based – full J2EE support
– Sophisticated integration capabilities to COM and
CORBA systems
– Scales well
– Fits well with DB2 and other IBM E-Business products
– Support for wireless mobile clients (J2ME)
– Requires greater care and feeding
– Excellent for large companies
2002
Daniel L. Silver
22
Comparison of Major
Application Servers

Oracle – Oracle(Ias (1.0)
– Claim to be the worlds leading wireless mobile
application server
– J2EE and XML programming model that
radically simplifies development, installation
and management
– Well situated for wireless web apps
– Good choice for medium to large companies
2002
Daniel L. Silver
23
Comparison of Major
Application Servers

SUN – Sun ONE (was iPlanet)
–
–
–
–
Excellent scaling and robustness
Automatic failover capabilities
Integrate XML parser to facilitate B2B apps
Version 6.5 promises new developer tools and
resources
– SUN has been the Java leader on the Web
– Always worth considering
2002
Daniel L. Silver
24
Comparison of Major
Application Servers

Macromedia – ColdFusion (MX)
– An easy-to-use web development environment
» Kawa (discontinued)
» Macromedia Flash MX
» Dreamweaver MX
–
–
–
–
2002
Uses its own powerful server-side scripting language
Has moved to the Java architecture
Also will support .NET and J2EE
Great for small to medium sized companies
Daniel L. Silver
25
THE END
danny.silver@acadiau.ca
The E-Business Architecture
Partners, Suppliers
PM
SupCM
Employees
KM
ERP
Stakeholders
Middleware
SellCM
CRM
Customers, Distributors
2002
Daniel L. Silver
27
Constructing the E-Business
Architecture

CRM = Customer Relationship
Management
– Marketing, Sales, Service

ERP = Enterprise Resource Planning
–
–
–
–
–
2002
Forecasting and Planning
Purchasing and Material Management
Inventory Management
Finished Porduct distribution
Accounting and Finance
Daniel L. Silver
28
Constructing the E-Business
Architecture

SupCM = Supply Chain Management
– Market demand
– Resource and capacity constraints
– Real-time scheduling

SellCM = Selling Chain Management
–
–
–
–
2002
Product Customization
Pricing, Contract and Commission Management
Quote and Proposal Generation
Promotions Management
Daniel L. Silver
29
Constructing the E-Business
Architecture

PM = Procurement Management
– Office Supplies, Business Travel, Entertainment,
Service contracting, IT h/w, s/w and networking

KM = Knowledge Management (DW/Analytics)
– Data Warehousing
– Business Analytics (data mining)
– Executive Info Systems, Decision Support Systems

Middleware = Integration Applications
– e.g. SAP (ERP) to SAS (KM)
2002
Daniel L. Silver
30
Download