Sunteți pe pagina 1din 23

Chapter 1: Introduction of Distributed System

1. 2. 3. 4. 5. 6. 7. 8. What is Distributed System? Distributed System vs Centralized System Advantages of Distributed System Client / Server System Distributed Object Computing Distributed Object Architecture Advantages of Distributed Object Architecture Distributed Object Programming Techniques

What is Distributed System?


- A distributed system is a collection of independent computers that appears to its users as a single coherent system - Andrew Tannenbaum - A distributed system is one in which hardware or software components located at networked computers communicate and coordinate their actions only by passing messages - Coulouris, Dollimore and Kindberg - A distributed system is one that stops you getting work done when a machine youve never even heard of crashes Lamport.
Chapter 1: Distributed System 2

What is Distributed System?


Characteristics: 1) Multiple, independent processing units 2)Capable of communicating over a network 3) The network is usually stable 4) Processing unit failures are independent 5) Manage resource sharing,
Hence, it is a collection of independent computers, interconnected via a network, capable of collaborating on a task.
Chapter 1: Distributed System 3

Centralized System vs Distributed System


Centralized systems: Data, Process and Interface components of an information system are central. Users interact with the system via terminals or terminal emulators.
A single computer with one ore more CPUs processes all incoming request Problems with cost, reliability Specification and implementation are defined within a single system
Chapter 1: Distributed System 4

Centralized System Architecture

Chapter 1: Distributed System

Centralized System Architecture

Chapter 1: Distributed System

Distributed System Architecture


Distributed System: Data, Process, and Interface components of an information system are distributed to multiple locations in a computer network. Accordingly, the processing workload is distributed across the network.
Set of separate computers that are capable of autonomous operation, link by a computer network. Enable individual computers (different location) to share resources in the network Server implementation for the same interface located in different servers.

Chapter 1: Distributed System

Chapter 1: Distributed System

Distributed System Architecture

Chapter 1: Distributed System

Advantages of DSA
Companies are preferring their system decentralized and distributed, because Distributed System allows companies to have better customer services.
Share ability: Allows systems to use each others resources Expandability: Permits new systems to be added as members of the overall system Local Autonomy: Manage local resources Improved performance: Resource replication. Combined processing power of multiple computers provides much more processing power than a centralised system with multiple CPUs Improved reliability and availability: Disruption would not stop the whole system from providing its services as resources spread across multiple computers Potential cost reductions
Chapter 1: Distributed System 10

Client / Server
Client/server is a distributed computing model in which client applications request services from server processes. Clients and servers typically run on different computers interconnected by a computer network.
Client application is a process or program that sends messages to a server via the network. Those messages request the server to perform a specific task, such as looking up a customer record in a database or returning a portion of a file on the servers hard disk. Server process or program listens for client requests that are transmitted via the network. Servers receive those requests and perform actions such as database queries and reading files.

Chapter 1: Distributed System

11

Client / Server System

Chapter 1: Distributed System

12

Client / Server Architecture

Chapter 1: Distributed System

13

Three-tier Architectures
An important design consideration for large client/server systems is whether a client talks directly to the server, or whether an intermediary process is introduced in-between the client and the server. The former is a two-tier architecture, the latter is a threetier architecture. In the three-tier architecture, process between Server and client (intermediary) process is:
separate the clients and servers. cache frequently accessed server data to ensure better performance and scalability. Performance can be increased by having the intermediary process to distribute client requests to several servers such that requests execute in parallel. The intermediary can also act as a translation service by converting requests and replies to and from a mainframe format, or as a security service that grants server-access only to trusted clients.
Chapter 1: Distributed System 14

Three-Tier Client Server System

Chapter 1: Distributed System

15

Three-Tier Internet Banking System

Chapter 1: Distributed System

16

Distributed Object Computing


Distributed object computing is Object-oriented modeling and programming that is applied to the development of client/server systems.
Objects are pieces of software that make distributed object computing accessible through a well defined interface. The interface consists of object operations and attributes that are remote accessible. Client applications may connect to a remote instance of the interface and invoke the operations on the remote object. The remote object acts as a server. Client/server objects have to interact with each other even if they are written in different programming languages and to run on different hardware and operating system platforms.
Chapter 1: Distributed System 17

Distributed Object Architecture


There is no distinction in a distributed object architecture between clients and servers Each distributable entity is an object that provides services to other objects and receives services from other objects Object communication is through a middleware system called an object request broker (software bus)

Chapter 1: Distributed System

18

Distributed Object Architecture

Chapter 1: Distributed System

19

Middleware
A software layer that sits between applications and the network operating system to hide the different underlying platforms. Provides more distribution transparency. Instead of communicating through operations on low level sockets and using the interfaces of the local file system, middleware offers services for different machines to pass each other messages at a higher abstraction level. Java RMI, CORBA, and DCOM (Distributed Component Object Model).

Chapter 1: Distributed System

20

Advantages of Distributed Object Architecture


It allows the system designer to delay decisions on where and how services should be provided It is a very open system architecture that allows new resources to be added to it as required The system is flexible and scaleable It is possible to reconfigure the system dynamically with objects migrating across the network as required

Chapter 1: Distributed System

21

Disadvantages of Distributed Object Architecture Systems are very difficult to design

Chapter 1: Distributed System

22

Distributed Object Programming Techniques


Java supports both RMI and CORBA
Remote Method Invocation allows objects in a network to remotely invoke methods of other objects in the same network Objects can be transported across the network using CORBAs standard protocol, IIOP All CORBA objects are filtered through an Object Request Broker (ORB) which allows objects to be translated from one language to another

Chapter 1: Distributed System

23

S-ar putea să vă placă și