Top Banner
Understanding Networked Applications A First Course 1 Lecture 5 Client- server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture 5.3 Application Examples 5.5 Open Issue: Beyond Client-Server Computing Reading: Chapter 5 Adapted from David G. Messerschmitt
24

Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Dec 28, 2015

Download

Documents

Grant Moore
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: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course1

Lecture 5 Client-server Computing

• 5.1 Two Host Architecture• 5.2 Three-Tier Client-Server Architecture• 5.3 Application Examples• 5.5 Open Issue: Beyond Client-Server

Computing• Reading: Chapter 5• Adapted from David G. Messerschmitt

Page 2: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course2

Clienthost

Serverhost

Clienthost

Page 3: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course3

Part of the rationale

• Specialization:– Clients specialize in user interface– Servers specialize in managing data and

application logic

• Sharing:– Many clients can be supported by few servers– Often data and logic are shared among

applications and users

Page 4: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course4Client/server

Peer-to-peerServer

“I want to access some information”

“I want to collaborate

with my colleague”

Client

Page 5: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course5

Distinctions

• Client-server– Asymmetric relationship– Client predominately makes requests, server

makes replies

• Peer-to-peer– Symmetric relationship– No server but only desktop computers– http://www.napster.com/

Page 6: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course6

ClientServer

Client

Email client sends message to server

Message is stored on POP server

Later, recipient’s email client retrieves message from server

Email application

Page 7: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course7

Client

Server

Client

Chat clients send user’s typing to server

Chat server aggregates typing from all users and sends to all clients

Other user’s clients display aggregated typing from chat server

Chat application

Page 8: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course8

Presentation

Applicationlogic

Shareddata

Local-area network

Note: many clients perapplication server, severalapplication servers per data server

5.2 Three-tier client-server architecture

Page 9: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course9

Client

Webbrowser

Webserver

Application logic

Databases and DBMS

Commongatewayinterchange

Host architecture

Application partition

Page 10: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course10

Departments

Enterprise

CommerceEnterprise-to-enterprise

Consumer

Page 11: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course11

Customers

Consumer Enterprise

Customer-servicedepartment Technical-support

department

software4u.com

Figure 3.2, p. 64

Page 12: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course12

Web server

Customer logic

Customeraudit

Softwaredocumentation

Webbrowser

Problemknowledge

base

Databases

Agent logic

Consumerapplication

Enterpriseapplication

Technician logic

Web server

Webbrowser

Web server

Webbrowser

Cus

tom

er c

are

Page 13: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course13

Accounts Products Orders

Customer logic

Databases

Agent logic

Customers Agents Technicians

Technician logic

Page 14: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course14

Book distributioncenters

books4u.comCustomers

Financial institution

Consumer Enterprise Inter-enterprise

Page 15: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course15

Web server

Customer logic

Customers Merchandise

Webbrowser

Orders

Acquirerbank

Bookdistributors

Databases

Outside links

Fulfillment logic

Consumere-commerce

Inter-enterprisee-commerce

Boo

k m

erch

ant

Page 16: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course16

Clients

Customers Merchandise

Acquirerbank

BookdistributorsOrders

Customer logic

Databases

Fulfillment logic

Page 17: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course17

Stock marketstocks4u.com

Customers

Information providers

Consumer Enterprise Inter-enterprise

Page 18: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course18

Web server

Customer logic

Accounts Products

Webbrowser

Orders

Informationproviders

Financialmarkets

Databases

Outside links

Trading logic

Consumere-commerce

Inter-enterprisee-commerce

Sto

ck tr

ader

Page 19: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course19

Clients

Accounts Products

Informationproviders

FinancialmarketsOrders

Customer logic

Databases

Trading logic

Page 20: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course20

Local floristsflowers4u.com

Customers

Financial institution

Consumer Enterprise Inter-enterprise

Page 21: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course21

Web server

Customer logic

Accounts Products

Webbrowser

Orders

Acquirerbank

Databases

Outside link

Fulfillment logic

Consumere-commerce

Inter-enterprisee-commerce

Push client

Push server

Flo

rist

del

iver

y

Page 22: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course22

Accounts Products

Acquirerbank

Orders

Customer logic

Databases

Fulfillment logic

Customers Florists

Page 23: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course23

5.5 Shortcomings of client/server

• Departmental solution• Proliferates non-interoperable technologies

and applications• Hardwired applications lose flexibility

What are some goals and likely characteristics of future enterprise architectures?

Page 24: Understanding Networked Applications A First Course 1 Lecture 5 Client-server Computing 5.1 Two Host Architecture 5.2 Three-Tier Client-Server Architecture.

Understanding Networked Applications A First Course24

Web Surfing and Homework #5

• Web Surfing– http://b2b.ebizq.net/– http://gais.cs.ccu.edu.tw/– http://www.esvj.com/binbig5/index.htm– http://www.nyc.gov.tw/job/

• Homework: – E5.1 (one example) – E5.5 (a)(C)(e)