880 likes | 902 Views
SYSTEM MODEL. From Chapter 2 of Distributed Systems Concepts and Design,4 th Edition,. SYSTEM MODEL. Topics. SYSTEM MODEL. Introduction. SYSTEM MODEL. Introduction. SYSTEM MODEL. Introduction. SYSTEM MODEL. Introduction. SYSTEM MODEL. Introduction. Architectural Models-Intro.
E N D
SYSTEM MODEL From Chapter 2 of Distributed Systems Concepts and Design,4th Edition,
SYSTEM MODEL Topics
SYSTEM MODEL Introduction
SYSTEM MODEL Introduction
SYSTEM MODEL Introduction
SYSTEM MODEL Introduction
SYSTEM MODEL Introduction
SYSTEM MODEL Architectural Models-Intro
SYSTEM MODEL Software Layers
SYSTEM MODEL Software Layers Layer N … Layer 2 (services offered to above layer) Layer 1 Figure 1. Software layers
SYSTEM MODEL Software Layers
SYSTEM MODEL Software Layers Figure 2. Software and hardware service layers in distributed systems
SYSTEM MODEL Software Layers
SYSTEM MODEL System Architectures
SYSTEM MODEL System Architectures
Client Server Architecture • A network architecture in which each computer or process on the network is either a client or a server. Source: http://webopedia.lycos.com
Components • Clients • Servers • Communication Networks Server Client
Clients • Applications that run on computers • Rely on servers for • Files • Devices • Processing power • Example: E-mail client • An application that enables you to send and receive e-mail Clients are Applications
Servers • Computers or processes that manage network resources • Disk drives (file servers) • Printers (print servers) • Network traffic (network servers) • Example: Database Server • A computer system that processes database queries Servers Manage Resources
Communication Networks Networks Connect Clients and Servers
Client–Server Computing • The client–server model of computing is a distributed application structure that partitions tasks or workloads between the providers of a resource or service, called servers, and service requesters, called clients. • A server host runs one or more server programs which share their resources with clients. A client does not share any of its resources, but requests a server's content or service function. Clients therefore initiate communication sessions with servers which await incoming requests.
The client/server design provides users with a means to issue commands which are sent across a network to be received by a server which executes their commands for them. The results are then sent back to the client machine which sent the request in order that the user may see the results. Server Client Client Client Client Client Client Client Client
Client–Server Computing • Process takes place • on the server and • on the client • Servers • Store and protect data • Process requests from clients • Clients • Make requests • Format data on the desktop Client-Server Computing Optimizes Computing Resources
Application Functions • Software application functions are separated into three distinct parts Server: Data Management Client: Presentation & Application Logic
Application Components Data Management 2 Client Types 3 Application Logic 2 Fat Client Thin Client Presentation 1 3 Logical Tiers • Database Applications: • Most common use of client-server architectures
Middleware • Software that connects two otherwise separate applications • Example: Middleware product linking a database system to a Web server Database Server: Manages Data Middleware Links Applications Web Server: Presents Dynamic Pages Client: Requests Data via Web
Application Servers Audio/Video Servers Chat Servers Fax Servers FTP Servers Groupware Servers IRC Servers(Internet Relay chat) List Servers Mail Servers News Servers Proxy Servers Telnet Servers Web Servers Types of Servers From A to Z Source: http://webopedia.lycos.com
Client-Server Model • Use TCP/IP for reliable network connection. • This implies the client must establish a connection before sending the first request.
layers vs tiers • Logical layers are merely a way of organizing your code. Typical layers include Presentation, Business and Data(UI, BLL and DAL)– the same as the traditional 3-tier model. • Physical tiers however, are only about where the code runs. Specifically, tiers are places where layers are deployed and where layers run. In other words, tiers are the physical deployment of layers.
Multitiered Architectures: 3 tiers • Server may act as a client • Example would be transaction monitor across multiple databases
Horizontal Distribution • Distribute servers across nodes • E.g., Web server “farm” for load balancing • Distribute clients in peer-to-peer systems. • horizontal - You add more machines. These machines are equal meaning that they play similar role. For example you have Node server that handles all requests. You install it on three machines. All these machines do the same thing. When the load is high you add another machine with Node server.
Vertical distribution refers to the distribution of the different layers in a multi-tiered architecture across multiple machines.
SYSTEM MODEL System Architectures
SYSTEM MODEL System Architectures This illustrates the simple structure in which client processes interact with Individual server processes in separate host computer. Server may in turn be clients for other server Figure 4. Clients invoke individual servers
SYSTEM MODEL System Architectures
SYSTEM MODEL System Architectures Figure 5. A distributed application based on the peer-to-peer architecture
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model Figure 6. A service provided by multiple servers.
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model Figure 7. Web proxy server
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model Figure 8. Web applets
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model
SYSTEM MODEL Variants of Client Sever Model