• No results found

Architecture Design For Web-based Application Systems. Instructor: Dr. Jerry Gao Class: CMPE296U

N/A
N/A
Protected

Academic year: 2021

Share "Architecture Design For Web-based Application Systems. Instructor: Dr. Jerry Gao Class: CMPE296U"

Copied!
21
0
0

Loading.... (view fulltext now)

Full text

(1)

Architecture Design For

Web-based Application Systems

Instructor: Dr. Jerry Gao

Class: CMPE296U

(2)

Architecture Design For Web-Based Application Systems

- (1994-1995) Hypertext Web Systems:

Graphic Web Browsers + Hyperlinks + HTML files. Features: HTML-based thin client. Limited Server Functions. Application: Only for documentation sharing and accesses.

Static Web Site construction. Pros: Simple and easy to set up.

Cons: Very server processing functions No dynamic HTML generation. No support for user interaction Not easy to maintain and manage

Browser user

client

Internet/Intranet HTTP Server HTML Files URL

HTTP HTML

(3)

- (1995-1996) Interactive HTML-based Web Systems:

Graphic Web Browsers + Hyperlinks + HTML files Plus: Forms, Tables, CGI,

and Secured Transactions: SSL, S-HTTP, Firewalls Features: Supporting user interactions and requests

HTML-based client, CGI-based Server program Secured communications and transactions Applications: DHTML web sites, Banking, On-line systems Pros: Secured communications.

Dynamic HTML generation.

User friendly due to user interactions.

Cons: Slow speed, limited client functions and GUI support. Unstructured server programs with low concurrence

Browser user

client

Internet Web Server

HTML Forms HTML Tables Firewall Gateway Programs CGI HTML & Forms

Architecture Design For Web-Based Application Systems

S-HHTP/SSL

Database Server

(4)

Architecture Design For Web-based Application Systems

- (1996-1997) Complex Interactive Web Systems(a): Client: Web Browser + HTML + JavaScript,

Server: Web Server + CGI + Gateway Programs + Database Server Plus secured transaction based on secured protocol and firewalls Features: Supporting better user interactions and requests

HTML/JavaScript client, CGI-based Server program Secured communications and transactions

Applications: Web-base application systems, tools, group-ware, On-line systems Pros: Global accesses, platform independent.

Secured communication and transactions.

Have a better GUI interface due to JavaScript features. Cons: Limited support for graphics and window applications

Unstructured server programs with low concurrence

Browser user

client

Internet Web Server

HTML Forms HTML Tables Firewall Gateway Programs CGI HTML Forms + JavaScript Database Server Database HTTPS or SSL (a)

(5)

- (1995-1996) Complex Interactive Web-Based Systems (b): Client: Web Browser + HTML + Java Applets

Server: Web Server + CGI (Gateway Programs) + Database Server Plus secured transaction based on secured protocol & firewalls Features: Supporting complex user interactions and requests

HTML/JAVA client, CGI-based Server program Secured communications and transactions

Applications: Web-base application systems, tools, group-ware, On-line systems Pros: Global accesses, platform independent.

Secured communication and transactions. Supporting Complex GUI interface.

Cons: Slow speed on Java applet download.

Unstructured server programs with low concurrency

Architecture Design For Web-Based Application Systems

Browser user

client

Internet Web Server

HTML Forms HTML Tables Firewall Gateway Programs CGI HTML Forms + Java Applets

Database Server Database HTTPS or SSL (b) Tier 2 Tier 3 Tier 1

(6)

- (1996-1997 --> Future) Object Web:

(a) Java Web: Java Applets + Mobile Components (RMI) Features: Supporting complex user interactions and requests

RMI communications between clients and server

No standard communication protocols. Java Client and Server. Applications: Intranet Web-base application systems, tools, group-ware. Pros: Intranet accesses, platform independent.

Support multithreading server. Supporting Complex GUI interface. Cons: No secured communications.

Client and server must be written in Java. Limitation on providing scalable servers.

Architecture Design For Web-Based Application Systems

Network Server Stub

Java Client Client Stub

Database Server Server Client Stub

RMI

(7)

- (1996-1997 --> Future) Object Web:

(b) JDBC-based: Java Applets + JDBC gateway programs

Features: Supporting complex data-centered user interactions and requests RMI communications between clients and server

Java Client and Server.

Applications: Intranet Web-base application systems, tools, group-ware. Pros: Intranet accesses, platform independent.

Support multithreading server. Supporting Complex GUI interface. Cons: No secured communications.

Client and server must be written in Java. Limitation on providing scalable servers.

Architecture Design For Web-based Application Systems

Network

Database Gateway Database Client

Java Client Database Server

JDBC

(b)

Tier 1 Tier 2 Tier 3

(8)

- (1996-1997 --> Future) Object Web:

(c) Java and CORBA (such as JOE, Iona):

Architecture Design For Web-based Application Systems

Browser user client Internet Web Server HTML Forms HTML Tables Gateway Programs CGI HTML Forms + Java Applets

Database Server Database HTTP (c) Tier 1 Tier 3 Tier 2 CORBA IIOP HTTP CORBA IIOP ORB Application Proxy Server CORBA OrbixWeb

- CORBA avoids the CGI bottleneck

- CORBA provides a scalable server-to-server infrastructure - CORBA extends Java with a distributed object infrastructure

Application 1 Application i CORBA

(9)

Architecture Design For Web-based Application Systems

Browser user client Internet Web Server HTML Forms HTML Tables Gateway Programs CGI/ISAPI HTML Forms + DocObjects SQL Server HTTP (d) Tier 1 Tier 3 Tier 2 Network OLE HTTP Network OLE

COM ORB Server Actives - (1996-1997 --> Future) Object Web:

(d) The Microsoft Object Web

Repository/cash of DocObjects or ActiveX Doc. Exchange OLE TP Monitor ActiveXs

(10)

Architecture Design For Web-based Application Systems

Browser user client Internet Web Server HTML Forms HTML Tables Gateway Programs CGI HTML

Forms + Java Applets

DBMS HTTP (d) Tier 1 Tier 3 Tier 2 CORBA IIOP HTTP CORBA IIOP & Compound Doc.

ORB Server Actives - (1996-1997 --> Future) Object Web:

(e) The CORBA/Cyberdog Object Web

Bento Doc. Or OODBMS Lotus Notes TP Monitor Compound Doc.

(11)

Architecture Design For Web-based Application Systems

Java Applet Encapsulation Program MVS System SNA TCP/IP

An encapsulation programs puts a more friendly face on a legacy system

Legacy System Ordering Encapsulation Program Java Applets Place order user

An encapsulation can present an interface different from the legacy system

(12)

Architecture Design For Web-based Application Systems

Standalone Java Email Application Java Email Server Email Applet in Web Browser HTTP RMI

A Java e-mail System

Legacy System Java Email Encapsulation Legacy E-mail System

Translate a legacy interface into something newer clients can deal with Web Server Legacy SystemNewer Work Stations RMI/CORBA

(13)

Architecture Design For Web-based Application Systems

Legacy System SNA Hardware Java client RMI/CORBA

Native methods to access a legacy system

Java Applet in Web Browser CORBA Front-End Legacy System

CORBA expands the accessibility of an encapsulation system Java Front-End Standalone Java Application C++ Application CORBA Legacy protocol Native Methods

(14)

Architecture Design For Web-based Application Systems

Java Encapsulation New Workstations RMI/CORBA

Legacy terminals and new workstations access the new system

Legacy System

Java Encapsulation Java client

An encapsulation can combine several systems together New Application Newer Database New System Legacy data All data RMI/CORBA New data All data Legacy TerminalsLegacy Terminals Terminal Population

(15)

Architecture Design For Web-based Application Systems

Java Web Server Servlet Legacy System

Web access to legacy systems involves a servlet

Java Web Server Servlet Encapsulation Legacy System

Web access to legacy system involves a servlet and an encapsulation (servlet and encapsulation reside in the same machine)

Encapsulation

Java method calls Legacy Protocol

Legacy Protocol

RMI

(16)

Client Architecture in Web-based Application Systems

- 1994 - 1995: HTML-based Thin Client Layer

- Hypertext client --> based on HTML pages + hypertext links - Simple interactions between users and systems

- Stateless client-server Communications - No cash on the client side

- No data verification and validation on the client side

Structure: a) Linear Structure, b) Tree Structure, c) Index Structure d) Network Structure, e) Simple Window Menu Structure

(a) (b) (c) (d) GUI P1 GUI P2 GUI P4 GUI P2 (e)

(17)

Client Architecture in Web-based Application Systems

1995-1996: Thin Client Layer based on HTML + JavaScript - HTML forms + JavaScript + hypertext links - Simple interactions between users and systems - Stateless client-server Communications

- Small data cash on the client side (cookies)

- Simple data verification and validation on the client side - Dynamic generation of HTML pages, tables, links

Structure: a) Linear Structure, b) Tree Structure, c) Index Structure d) Network Structure, e) Simple Window Menu Structure

(a) (b) (c) (d) GUI P1 GUI P2 GUI P4 GUI P2 (e)

(18)

Client Architecture in Web-based Application Systems

1996-1997: Java Client (Thin - Thick)

- HTML forms embedded Java Applets - Cash data on the client side

- Stateless/State client-server Communications

- Completed data verification and validation on the client side - Support complex GUI structure and graphic display

Structure: a) Single Applet

b) Multiple Applets in a HTML page (with multiple frames) c) Multiple Applets in different HTML pages

Application GUI Applet

Communication

Security Control Work Flow Control

Client Data Loader Applet Loader

Access Control Client DB

Timer

Tool Bar Help

Application GUI

Print JavaIDL

(19)

Client Architecture in Web-based Application Systems

1997 - Future: The Future Web Client (Three Client Models): a) Browser as Desktop:

It assumes that people live within their browsers. This is the current Netscape model of the world. b) Web-Enabled Desktop Components:

Every thing on the desktop is Web-enabled; the idea is that you will be able to access the Web from within any application or component without starting a browser. This is the Cyberdog model of the world; Microsoft will also support this model in Windows 97.

c) Shippable Places:

This lets you access the Web from within your places. A place can have multiple concurrent sessions with Web object servers. In addition, multiple places can be concurrently active on the same desktop. The Object Web may end up supporting all three models.

(20)

Server Architecture in Web-based Application Systems

- Trade-off in building a web-based application server - Considering factors:

- System performance - Fault tolerance - System scale-up - Complexity

- System configuration and flexibilty - Technology selection:

- CORBA-based server or DCOM-based server - Java server

- Server made by C++/C

- Interaction style between client and server - Distributed objects

- Communication protocol, like HTTP/HTTPS, or TCP/IP socket - Single thread vs. multiple thread

- Multiple servers vs. single server

- Server configuration structure: single box vs. multiple boxes - Layered architecture

- How to link a web-based application server to legacy software - How to link a web-based application server to applications

(21)

Server Architecture in Web-based Application Systems

- Trade-off in building a web-based application server - Considering factors: - System performance - Fault tolerance - System scale-up - Complexity - System configuration - Technology selection:

- CORBA-based server or DCOM-based server - Java server

- Server made by C++/C

- Interaction style between client and server - Distributed objects

- Communication protocol, like HTTP/HTTPS, or TCP/IP socket - Single thread vs. multiple thread

- Multiple servers vs. single server

- Server configuration structure: single box vs. multiple boxes - Layered architecture

- How to link a web-based application server to legacy software - How to link a web-based application server to applications

References

Related documents

EagleView’s complaint touted the close competition between Respondents, alleging, “Xactware has developed a product, known as Aerial Sketch, which enables it to compete directly with

As can be seen from Section 2 the composite emitter - toroid and dipole - becomes a non-radiating configuration (note that the compensation condition (9) is satisfied) due to

In the Book of Genesis we are told: “The serpent spoke and said to the woman, ‘You will not die for God knows that when you eat of the tree of knowledge of good and evil, your eye

(Research & Policy Brief). Portland, ME: University of Southern Maine, Muskie School of Public Service, Maine Rural Health Research Center.. areas), and are more likely to

P ETLAMUL W., P RASERTSAN P., 2012 – Evaluation of strains of Metarhizium anisopliae and Beauveria bassiana against Spodoptera litura on the basis of their virulence,

Circle, San Francisco, CA 94124. The purpose of the meetings is to receive comments on the scope and content of the environmental review to be conducted on the proposed

It is obvious that nickel nitrate is shown by the discoloration around the bright particles in Figure 29(a) and (c) effectively coats the LSGM particles. LSGM is not

S 19.2 Where ML/TF risks are assessed as higher risks, reporting institutions are required to conduct enhanced CDD for business relationships and transactions