Top Banner
1 C.Watters Feb 2001 Web Architectures Designing for the Web
35

Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Dec 13, 2015

Download

Documents

Aron Bailey
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

1C.WattersFeb 2001

Web Architectures

Designing for the Web

Page 2: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

multi-multi-multi-multi-multi

Multi-client – PC, Mac, Unix, wireless, …Multi-server-platform – PC, Mac, Unix, watch,…Multi-tier – layers of software componentsMulti-threaded – concurrent processingMulti-component – CORBA, COM, javabeans,…Multi-database – Oracle, Ingres, Access, …Multi-cultural – North American, European, African, ….

Page 3: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Objectives

Examine current web 3-tier client/server architectures

Look at some basic E-commerce architectures

Page 4: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Client-Server model and Tiered Architectures

Late 1980’s

Replace centralized mainframe architectures

Page 5: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

1-Tier Architecture Processing(a)

MainMainFrame

Page 6: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

File Server Configuration(1-Tier (b))

FileServer Files

1.Ask for file2.File

3.Process

4. Return File

Page 7: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Client-Server Architectures

Provide responses rather than file downloads for local processing

Message basedServes many more users

simultaneouslyTiers

2-tier 3-tier N-tier or multi-tier

Page 8: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Client/Server Processing

Client

Server

Data

1.request

2.Process request

3.response

Page 9: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

2-Tiers

Page 10: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Middle Tier

Implementation Strategies TP monitors (transaction processing monitors) Message servers Application servers ORB (CORBA) Object Request Broker

Functions Queuing Application execution caching

Page 11: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,
Page 12: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Why bother?

Scalable Number of users Number of transactions

Flexible Drop applications onto different

servers Keep sophisticated applications

independent of server

Page 13: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Fatness in Clients

Where do you want the processing ??

Fat client Application and processing on client Download application and every update

Thin client Application and processing on server More traffic

Page 14: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Some Design Examples

Shopping cartB2CB2B

Page 15: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Shopping Cart (B2C)Client Tier (applet/javascript)

Validate format of credit card numberDo “what-if” calculations

Middle Tier/ Middleware (java/perl)Create catalog for displayMake purchase

Data Tier (Oracle, Ingres, Access, etc)Query inventory for selection of itemsUpdate inventory after sale

Page 16: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

16C.WattersFeb 2001

B2B Architecture

B2C E-commerce

Consumers

B2B E-Commerce

BusinessCustomers

Supplier’sProducts Catalog

Customer’sOrder Information

Supplier’sElectronic Mall

Page 17: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

As a 3-Tier Architecture

Supplier GUI Customer GUI

Make quote Order Create Catalog

TakeOrder

Oracle

UI

Tier

App

Tier

Data

Tier

Page 18: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Internet based EDI

InternetWeb

server

EDIserver

database

database

EDI legacy applications

Browser

Page 19: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 19

Peer-to-peer

Each party has the same capabilitiesTypically each party is a client-serverExamples Napster – MP3 file sharing Gnutella – file sharing IBM APPN

Page 20: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 20

Peer-to-peer on the Internet

Transient internet network in which users use the same application to communicate and share access to their hard drivesAdvantages Don’t have to move files to central

server

Page 21: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 21

How to make this work on the Internet

Create an applicationEverybody downloads the applicationExecute applicationsConnections Gnutella model – enter known IP address Napster model – enter Napster IP

address

Page 22: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 22

Napster and Gnutella

MP3Central serverServer collects dataServer as switch for downloads

Other filesNo central serverDirect IP connectionsHorizon of 1000

Page 23: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 23

GarageSale Samples Client 1.1

Page 24: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 24

Page 25: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 25

Page 26: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 26

Page 27: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 27

Page 28: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 28

Page 29: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 29

Page 30: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 30

Page 31: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 31

Page 32: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 32

Page 33: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 33

Page 34: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

Feb 2001 C.Watters 34

Page 35: Web Architectures Designing for the Web multi-multi-multi-multi-multi Multi-client – PC, Mac, Unix, wireless, … Multi-server-platform – PC, Mac, Unix,

RECAP

Internet activity is client/server based

MultiTier architectures provide flexibility

Peer-to-peer is here!