Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 27

Understanding Networked Applications:

A First Course

Chapter 5

by
David G. Messerschmitt
Client Client
host host

Server
host

Understanding Networked Applications 2 A First Course


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 3 A First Course
“I want to
collaborate
with my
“I want to access colleague”
some information”

Client

Server Peer-to-peer

Client/server
Understanding Networked Applications 4 A First Course
Distinctions
• Client-server
– Asymmetric relationship
– Client predominately makes requests, server
makes replies
• Peer-to-peer
– Symmetric relationship

Understanding Networked Applications 5 A First Course


Email application

Server
Client Client

Email client sends Later, recipient’s


message to server email client
Message is stored
retrieves message
on POP server
from server

Understanding Networked Applications 6 A First Course


Chat application

Server

Client
Client

Chat server
aggregates typing Other user’s clients
from all users and display aggregated
Chat clients send sends to all clients typing from chat
user’s typing to server
server
Understanding Networked Applications 7 A First Course
Three-tier client/server
Local-area network
Application
logic

Presentation

Note: many clients per Shared


application server, several data
application servers per data
server

Understanding Networked Applications 8 A First Course


Client

Host architecture
Web
browser

Web
server Common
gateway
Application interchange
logic

Databases
and DBMS

Application partition
Understanding Networked Applications 9 A First Course
Practice in defining tiers
• Online bookseller (e.g. amazon.com)
• Stock trading system (e.g. Schwab or E-
trade)

Understanding Networked Applications 10 A First Course


amazon.com

Understanding Networked Applications 11 A First Course


Schwab

Understanding Networked Applications 12 A First Course


Question
• What types of social applications would be
appropriate for a client/server architecture?

Understanding Networked Applications 13 A First Course


Departments

Enterprise-to-enterprise
Commerce
Consumer

Enterprise
Understanding Networked Applications 14 A First Course
software4u.com

Customers
Customer-service
Technical-support
department
department

Consumer Enterprise

Understanding Networked Applications 15 A First Course


Consumer Enterprise
application application
Web Web Web
browser browser browser
Customer care

Web server Web server Web server

Customer logic Agent logic Technician logic

Databases

Customer Software Problem


audit documentation knowledge
base
Understanding Networked Applications 16 A First Course
Customers Agents Technicians

Customer logic Agent logic Technician logic

Databases

Accounts Products Orders

Understanding Networked Applications 17 A First Course


Financial institution

Book distribution
Customers centers
books4u.com

Consumer Enterprise Inter-enterprise

Understanding Networked Applications 18 A First Course


Consumer Inter-enterprise
Web e-commerce e-commerce
browser
Book merchant

Web server

Customer logic Fullfillment logic

Outside links
Databases
Acquirer Book
Customers Merchandise Orders bank distributors

Understanding Networked Applications 19 A First Course


Clients

Acquirer
Customer logic bank

Fullfillment logic

Databases

Book
Customers Merchandise Orders distributors

Understanding Networked Applications 20 A First Course


Information providers

Customers
Stock market
stocks4u.com

Consumer Enterprise Inter-enterprise


Understanding Networked Applications 21 A First Course
Consumer Inter-enterprise
Web e-commerce e-commerce
browser
Stock trader

Web server

Customer logic Trading logic

Outside links
Databases
Information Financial
Accounts Products Orders providers markets

Understanding Networked Applications 22 A First Course


Clients

Information
Customer logic providers

Trading logic

Databases

Financial
Accounts Products Orders markets

Understanding Networked Applications 23 A First Course


Financial institution

Customers

flowers4u.com
Local florists

Consumer Enterprise Inter-enterprise

Understanding Networked Applications 24 A First Course


Consumer Inter-enterprise
e-commerce e-commerce

Web Push
browser server
Florist delivery

Web server Push client

Customer logic Fullfillment logic

Outside link
Databases
Acquirer
Accounts Products Orders bank

Understanding Networked Applications 25 A First Course


Customers Florists

Customer logic Fullfillment logic

Acquirer
bank

Databases

Accounts Products Orders

Understanding Networked Applications 26 A First Course


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?

Understanding Networked Applications 27 A First Course

You might also like