2. Introduction
Also known as distributed computing and distributed databases, a distributed system is a collection of
independent components located on different machines that share messages with each other in order to
achieve common goals.
As such, the distributed system will appear as if it is one interface or computer to the end-user.
The hope is that together, the system can maximize resources and information while preventing
failures, as if one system fails, it won't affect the availability of the service.
3. Reasons for Distributed Systems
• All the nodes in the distributed system are connected to each other. So nodes can easily share data with
other nodes.
• More nodes can easily be added to the distributed system i.e. it can be scaled as required.
• Failure of one node does not lead to the failure of the entire distributed system. Other nodes can still
communicate with each other.
• Reliability: A well-designed distributed system can withstand failures in one or more of its nodes
without severely impacting performance. In a monolithic system, the entire application goes down if the
server goes down.
4. Distributed System Architecture
• Middleware is software that lies between an operating system and the
applications running on it. Essentially functioning as hidden translation layer,
middleware enables communication and data management for distributed
applications.
5. The main goal of a distributed
1.Connecting Users and Resources:
• The main goal of a distributed system is to make it easy for users to acces remote resourses and to share them
with others in a controlled way.
• It is cheaper to le a printer be shared by several users than buying and maintaining printers for each user.
2. Transparency:
• It is important for a distributed system to hide the location of its process and resource. A distributed system that
can portray itself as a single system is said to be transparent.
3. Openness or Scalable:
• Open distributed system must be flexible making it easy to configure and add new components without
affecting existing components.
6. Requirements of Distributed Systems
• Identify the data source and destination.
• Concurrent Transaction Processing:
• Several applications or users often need to share the same data source. .
• Fault tolerance: Failure of a component (partial failure) should not result in failure of the whole system
• Security and reliability :Security, which ensures the system is doing the required job, correctly.