The distributed information system is defined as “a number of interdependent computers linked by a network for sharing information among them”. A distributed information system consists of multiple autonomous computers that communicate or exchange information through a computer network.
Design issues of distributed system –
- Heterogeneity : Heterogeneity is applied to the network, computer hardware, operating system and implementation of different developers. A key component of the heterogeneous distributed system client-server environment is middleware. Middleware is a set of service that enables application and end-user to interacts with each other across a heterogeneous distributed system.
- Openness: The openness of the distributed system is determined primarily by the degree to which new resource sharing services can be made available to the users. Open systems are characterized by the fact that their key interfaces are published. It is based on a uniform communication mechanism and published interface for access to shared resources. It can be constructed from heterogeneous hardware and software.
- Scalability: Scalability of the system should remain efficient even with a significant increase in the number of users and resources connected.
- Security : Security of information system has three components Confidentially, integrity and availability. Encryption protects shared resources, keeps sensitive information secrets when transmitted.
- Failure Handling : When some faults occur in hardware and the software program, it may produce incorrect results or they may stop before they have completed the intended computation so corrective measures should to implemented to handle this case.
Failure handling is difficult in distributed systems because the failure is partial i, e, some components fail while others continue to function.
- Concurrency: There is a possibility that several clients will attempt to access a shared resource at the same time. Multiple users make requests on the same resources, i.e read, write, and update. Each resource must be safe in a concurrent environment. Any object that represents a shared resource a distributed system must ensure that it operates correctly in a concurrent environment.
- Transparency : Transparency ensures that the distributes system should be perceived as the single entity by the users or the application programmers rather than the collection of autonomous systems, which is cooperating. The user should be unaware of where the services are located and the transferring from a local machine to a remote one should be transparent.
- How to Crack System Design Round in Interviews?
- Design an online book reader system
- Hashing in Distributed Systems
- MPI - Distributed Computing made easy
- Centralized vs Distributed Version Control: Which One Should We Choose?
- Difference between Management Information System (MIS) and Decision Support System (DSS)
- Layouts in Android UI Design
- Design a Keylogger in Python
- OOPs | Object Oriented Design
- 6 Best CSS frameworks You should Know to design Attractive Websites
- 8 Ways to Shipwreck Your Next Website Design
- UI vs UX Design : Which Career Option Should You Choose?
- Characteristics of Good Object Oriented Design
- Design Patterns : A Must Skill to have for Software Developers in 2019
- Design data structures for a very large social network like Facebook or Linkedln
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.