Understanding Networked Applications: A First Course Chapter 5 by David G. Messerschmitt
Understanding Networked Applications A First Course 2 Client host Server host Client host
Understanding Networked Applications A First Course 3 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 Course 4 Client/server Peer-to-peer Server “I want to access some information” “I want to collaborate with my colleague” Client
Understanding Networked Applications A First Course 5 Distinctions Client-server –Asymmetric relationship –Client predominately makes requests, server makes replies Peer-to-peer –Symmetric relationship
Understanding Networked Applications A First Course 6 Client Server Client client sends message to server Message is stored on POP server Later, recipient’s client retrieves message from server application
Understanding Networked Applications A First Course 7 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 Course 8 Presentation Application logic Shared data Local-area network Note: many clients per application server, several application servers per data server Three-tier client/server
Understanding Networked Applications A First Course 9 Client Web browser Web server Application logic Databases and DBMS Common gateway interchange Host architecture Application partition
Understanding Networked Applications A First Course 10 Practice in defining tiers Online bookseller (e.g. amazon.com) Stock trading system (e.g. Schwab or E- trade)
Understanding Networked Applications A First Course 11 amazon.com
Understanding Networked Applications A First Course 12 Schwab
Understanding Networked Applications A First Course 13 Question What types of social applications would be appropriate for a client/server architecture?
Understanding Networked Applications A First Course 14 Departments Enterprise Commerce Enterprise-to-enterprise Consumer
Understanding Networked Applications A First Course 15 Customers Consumer Enterprise Customer-service department Technical-support department software4u.com
Understanding Networked Applications A First Course 16 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 Customer care
Understanding Networked Applications A First Course 17 AccountsProductsOrders Customer logic Databases Agent logic CustomersAgentsTechnicians Technician logic
Understanding Networked Applications A First Course 18 Book distribution centers books4u.com Customers Financial institution Consumer EnterpriseInter-enterprise
Understanding Networked Applications A First Course 19 Web server Customer logic CustomersMerchandise Web browser Orders Acquirer bank Book distributors Databases Outside links Fullfillment logic Consumer e-commerce Inter-enterprise e-commerce Book merchant
Understanding Networked Applications A First Course 20 Clients Customers Merchandise Acquirer bank Book distributors Orders Customer logic Databases Fullfillment logic
Understanding Networked Applications A First Course 21 Stock market stocks4u.com Customers Information providers Consumer EnterpriseInter-enterprise
Understanding Networked Applications A First Course 22 Web server Customer logic AccountsProducts Web browser Orders Information providers Financial markets Databases Outside links Trading logic Consumer e-commerce Inter-enterprise e-commerce Stock trader
Understanding Networked Applications A First Course 23 Clients AccountsProducts Information providers Financial markets Orders Customer logic Databases Trading logic
Understanding Networked Applications A First Course 24 Local florists flowers4u.com Customers Financial institution Consumer EnterpriseInter-enterprise
Understanding Networked Applications A First Course 25 Web server Customer logic AccountsProducts Web browser Orders Acquirer bank Databases Outside link Fullfillment logic Consumer e-commerce Inter-enterprise e-commerce Push client Push server Florist delivery
Understanding Networked Applications A First Course 26 AccountsProducts Acquirer bank Orders Customer logic Databases Fullfillment logic CustomersFlorists
Understanding Networked Applications A First Course 27 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?