View
222
Download
0
Category
Tags:
Preview:
Citation preview
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
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
Understanding Networked Applications A First Course4Client/server
Peer-to-peerServer
“I want to access some information”
“I want to collaborate
with my colleague”
Client
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/
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
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
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
Understanding Networked Applications A First Course9
Client
Webbrowser
Webserver
Application logic
Databases and DBMS
Commongatewayinterchange
Host architecture
Application partition
Understanding Networked Applications A First Course10
Departments
Enterprise
CommerceEnterprise-to-enterprise
Consumer
Understanding Networked Applications A First Course11
Customers
Consumer Enterprise
Customer-servicedepartment Technical-support
department
software4u.com
Figure 3.2, p. 64
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
Understanding Networked Applications A First Course13
Accounts Products Orders
Customer logic
Databases
Agent logic
Customers Agents Technicians
Technician logic
Understanding Networked Applications A First Course14
Book distributioncenters
books4u.comCustomers
Financial institution
Consumer Enterprise Inter-enterprise
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
Understanding Networked Applications A First Course16
Clients
Customers Merchandise
Acquirerbank
BookdistributorsOrders
Customer logic
Databases
Fulfillment logic
Understanding Networked Applications A First Course17
Stock marketstocks4u.com
Customers
Information providers
Consumer Enterprise Inter-enterprise
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
Understanding Networked Applications A First Course19
Clients
Accounts Products
Informationproviders
FinancialmarketsOrders
Customer logic
Databases
Trading logic
Understanding Networked Applications A First Course20
Local floristsflowers4u.com
Customers
Financial institution
Consumer Enterprise Inter-enterprise
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
Understanding Networked Applications A First Course22
Accounts Products
Acquirerbank
Orders
Customer logic
Databases
Fulfillment logic
Customers Florists
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?
Recommended