Understanding Networked Applications: A First Course Chapter 5 by David G. Messerschmitt Client host Client host Server host Understanding Networked Applications A First Course.
Download ReportTranscript Understanding Networked Applications: A First Course Chapter 5 by David G. Messerschmitt Client host Client host Server host Understanding Networked Applications A First Course.
Understanding Networked Applications: A First Course Chapter 5 by David G. Messerschmitt Client host Client 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 colleague” “I want to access some information” Client Peer-to-peer Server 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 Email client sends message to server Client Message is stored on POP server Understanding Networked Applications 6 Later, recipient’s email client retrieves message from server A First Course Chat application Server Client Client Chat clients send user’s typing to server Chat server aggregates typing from all users and sends to all clients Understanding Networked Applications 7 Other user’s clients display aggregated typing from chat server A First Course Three-tier client/server Local-area network Application logic Presentation Note: many clients per application server, several application servers per data server Understanding Networked Applications Shared data 8 A First Course Client Host architecture Web browser Web server Application logic Common gateway interchange Databases and DBMS Understanding Networked Applications Application partition 9 A First Course Practice in defining tiers • Online bookseller (e.g. amazon.com) • Stock trading system (e.g. Schwab or Etrade) 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 department Consumer Understanding Networked Applications Technical-support department Enterprise 15 A First Course Customer care Consumer application Enterprise application Web browser Web browser Web browser Web server Web server Web server Customer logic Agent logic Technician logic Databases Customer audit Software documentation Understanding Networked Applications Problem knowledge base 16 A First Course Customers Customer logic Agents Technicians Agent logic Technician logic Databases Accounts Products Understanding Networked Applications Orders 17 A First Course Financial institution Book distribution centers Customers books4u.com Consumer Enterprise Understanding Networked Applications Inter-enterprise 18 A First Course Book merchant Web browser Consumer e-commerce Inter-enterprise e-commerce Web server Customer logic Fullfillment logic Outside links Databases Customers Merchandise Acquirer Book bank distributors Orders Understanding Networked Applications 19 A First Course Clients Acquirer bank Customer logic Fullfillment logic Databases Customers Merchandise Understanding Networked Applications Orders 20 Book distributors A First Course Information providers Customers Stock market stocks4u.com Consumer Enterprise Understanding Networked Applications Inter-enterprise 21 A First Course Stock trader Web browser Consumer e-commerce Inter-enterprise e-commerce Web server Customer logic Trading logic Outside links Databases Accounts Products Information providers Orders Understanding Networked Applications 22 Financial markets A First Course Clients Information providers Customer logic Trading logic Databases Accounts Products Understanding Networked Applications Orders 23 Financial markets A First Course Financial institution Customers flowers4u.com Local florists Consumer Enterprise Understanding Networked Applications Inter-enterprise 24 A First Course Consumer e-commerce Inter-enterprise e-commerce Florist delivery Web browser Push server Web server Push client Customer logic Fullfillment logic Outside link Databases Accounts Products Acquirer bank Orders Understanding Networked Applications 25 A First Course Customers Florists Fullfillment logic Customer logic Acquirer bank Databases Accounts Products Understanding Networked Applications Orders 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