3. 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
4. Understanding Networked Applications A First Course4
Client/server
Peer-to-peerServer
“I want to access
some information”
“I want to
collaborate
with my
colleague”
Client
5. Understanding Networked Applications A First Course5
Distinctions
• Client-server
– Asymmetric relationship
– Client predominately makes requests, server
makes replies
• Peer-to-peer
– Symmetric relationship
6. Understanding Networked Applications A First Course6
Client
Server
Client
Email client sends
message to server
Message is stored
on POP server
Later, recipient’s
email client
retrieves message
from server
Email application
7. 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
8. Understanding Networked Applications A First Course8
Presentation
Application
logic
Shared
data
Local-area network
Note: many clients per
application server, several
application servers per data
server
Three-tier client/server
9. Understanding Networked Applications A First Course9
Client
Web
browser
Web
server
Application
logic
Databases
and DBMS
Common
gateway
interchange
Host architecture
Application partition
10. Understanding Networked Applications A First Course10
Practice in defining tiers
• Online bookseller (e.g. amazon.com)
• Stock trading system (e.g. Schwab or E-
trade)
13. Understanding Networked Applications A First Course13
Question
• What types of social applications would be
appropriate for a client/server architecture?
15. Understanding Networked Applications A First Course15
Customers
Consumer Enterprise
Customer-service
department
Technical-support
department
software4u.com
16. Understanding Networked Applications A First Course16
Web server
Customer logic
Customer
audit
Software
documentation
Web
browser
Problem
knowledge
base
Databases
Agent logic
Consumer
application
Enterprise
application
Technician logic
Web server
Web
browser
Web server
Web
browser
Customercare
17. Understanding Networked Applications A First Course17
Accounts Products Orders
Customer logic
Databases
Agent logic
Customers Agents Technicians
Technician logic
18. Understanding Networked Applications A First Course18
Book distribution
centers
books4u.com
Customers
Financial institution
Consumer Enterprise Inter-enterprise
19. Understanding Networked Applications A First Course19
Web server
Customer logic
Customers Merchandise
Web
browser
Orders
Acquirer
bank
Book
distributors
Databases
Outside links
Fullfillment logic
Consumer
e-commerce
Inter-enterprise
e-commerceBookmerchant
20. Understanding Networked Applications A First Course20
Clients
Customers Merchandise
Acquirer
bank
Book
distributorsOrders
Customer logic
Databases
Fullfillment logic
21. Understanding Networked Applications A First Course21
Stock market
stocks4u.com
Customers
Information providers
Consumer Enterprise Inter-enterprise
22. Understanding Networked Applications A First Course22
Web server
Customer logic
Accounts Products
Web
browser
Orders
Information
providers
Financial
markets
Databases
Outside links
Trading logic
Consumer
e-commerce
Inter-enterprise
e-commerceStocktrader
23. Understanding Networked Applications A First Course23
Clients
Accounts Products
Information
providers
Financial
marketsOrders
Customer logic
Databases
Trading logic
24. Understanding Networked Applications A First Course24
Local florists
flowers4u.com
Customers
Financial institution
Consumer Enterprise Inter-enterprise
25. Understanding Networked Applications A First Course25
Web server
Customer logic
Accounts Products
Web
browser
Orders
Acquirer
bank
Databases
Outside link
Fullfillment logic
Consumer
e-commerce
Inter-enterprise
e-commerce
Push client
Push
server
Floristdelivery
26. Understanding Networked Applications A First Course26
Accounts Products
Acquirer
bank
Orders
Customer logic
Databases
Fullfillment logic
Customers Florists
27. Understanding Networked Applications A First Course27
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?
Editor's Notes
Copyright 1999, University of California Jul 29, 2013
Copyright 1999, University of California Jul 29, 2013
Copyright 1999, University of California Jul 29, 2013
Copyright 1999, University of California Jul 29, 2013
Copyright 1999, University of California Jul 29, 2013 What is presentation, application logic, shared data? Presentation: Web browser Application logic Shared data
Copyright 1999, University of California Jul 29, 2013 What is presentation, application logic, shared data?
Copyright 1999, University of California Jul 29, 2013 Deferred applications need a server -- you wouldn’t want communication to fail because a client was turned off, and there is often a “consolidation” function (example chatroom) Immediate applications can be done peer-to-peer -- if a client is turned off, no point to the application anyway. Also avoids server bottlenecks. Server may still have a role is filtering or consolidation.
Copyright 1999, University of California Jul 29, 2013 Major goal: flexibility to meet new business opportunities and new organizational structures More tiers to logically decouple roles Away from stovepipe: horizontal as well as vertical structure