Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Distributed Systems Articles
Found 10 articles
Resource Deadlocks vs Communication Deadlocks in Distributed Systems
Deadlock in an operating system happens when a process gets into a waiting state as other processes hold the resources which need to be used. This problem generally happens during multi-processing environments, distributed systems, and parallel computation systems. In distributed systems, deadlocks are considered a major problem, where the resources requested by the process are not available due to other processes holding onto them. A distributed system contains a set of processes p1, p2, p3…pn that do not share a common memory, and communication is made only by passing messages through the network. Each process has two states such ...
Read MoreRaymond’s tree based algorithm
Raymond's tree-based algorithm is a distributed mutual exclusion algorithm that uses a token-based approach to control access to critical sections in distributed systems. It organizes all nodes in a directed spanning tree structure, where edges point toward the node currently holding the token. This algorithm ensures that only one process can enter the critical section at any given time across the entire distributed network. How Raymond's Tree Algorithm Works The algorithm operates on the principle that only the node with the token can enter the critical section. All nodes are arranged in a tree structure where each node ...
Read MoreThe PACELC theorem
The PACELC theorem is an extension of the famous CAP theorem that provides a more comprehensive framework for understanding trade-offs in distributed systems. While CAP focuses on Consistency, Availability, and Partition tolerance, PACELC adds considerations for Latency and Consistency during normal operations. The theorem states: if there is a network partition (P), a system must choose between availability (A) and consistency (C); else (E), when the system is running normally without partitions, there is a trade-off between latency (L) and consistency (C). Understanding PACELC Components Partition Tolerance (P) Partition tolerance ensures the system continues functioning even when ...
Read MoreTransparency of RPC in Distributed Networks
In distributed networks, communication between different nodes is essential for achieving desired functionality. Remote Procedure Call (RPC) enables this communication by allowing programs to execute procedures on remote servers as if they were local. However, the success of distributed networks often depends on RPC transparency. RPC can be defined as a function call used by one program to request services from another program, where these programs may be located on different systems across the network. RPC Transparency in Distributed Networks Client Node Application Program A ...
Read MoreMethodologies of Large Scale Distributed Systems
Large-scale distributed systems handle massive data volumes, many concurrent users, and demanding performance requirements. Building them requires methodologies that help developers efficiently manage complexity, scalability, and fault tolerance. Companies like Google, Amazon, and Facebook use these systems extensively. Architecture of Distributed Systems Distributed systems consist of multiple nodes connected via a network, each running part of the distributed software. Understanding domain requirements, security, compliance, and future integrations is critical from the start. Node 1 Node 2 Node 3 ...
Read MoreException Handling in Distributed System
Introduction In context of distributed systems, exception handling refers to process of detecting, diagnosing, and recovering from errors that occur in a distributed system. In such systems, errors can occur at any point in communication and coordination process, including network failures, hardware malfunctions, and software bugs. Thus, effective exception handling is crucial to ensure reliability and availability of a distributed system. In this article, we will explore various techniques and best practices for exception handling in distributed systems. Importance of Exception Handling in Distributed Systems In a distributed system, multiple processes run on different machines and communicate with each other ...
Read MoreEvolution of Distributed Computing Systems
Introduction Distributed computing systems refer to a network of interconnected devices that share resources and work together to achieve a common goal. evolution of distributed computing systems has been rapid, and it has transformed way we use technology in our daily lives. From simple file sharing systems to advanced cloud computing, distributed computing systems have come a long way. In this article, we will discuss evolution of distributed computing systems and explore some of examples. Early Days of Distributed Computing The early days of distributed computing can be traced back to 1960s, where researchers began experimenting with idea of sharing ...
Read MoreEvent Ordering in Distributed System
Introduction Distributed systems have become an integral part of our modern-day technological infrastructure. They have made it possible to deliver services at scale, provide better resilience, and enable better fault tolerance. However, designing distributed systems is a challenging task, and one of most significant challenges is maintaining ordering of events in system. This article will discuss event ordering in distributed systems and provide examples of different techniques used to achieve it. Event Ordering Event ordering is essential in distributed systems because it determines order in which events occur. In a distributed system, events can happen concurrently on different nodes, and ...
Read MoreDistributed Consensus in Distributed System
Distributed Consensus Distributed consensus plays a vital role in decentralized systems, ensuring reliability, fault tolerance, and agreement among multiple parties. Distributed consensus occurs when multiple parties try to accept some values, which is difficult as agreeing is not easy. The complexity to achieve consensus increases as an increase in the number of parties agree on an agreement. Various sites are working together to do a common task by communicating with each other via a network and agreeing to some values which come under distributed consensus. Importance of Distributed Consensus in Distributed Systems In a distributed or decentralized multi−agent platform, ...
Read MoreDifference between Token-based and Non-Token-based Algorithms in Distributed Systems
Distributed systems are computing systems composed of multiple interconnected nodes that work together to perform a unified task. In such systems, algorithms play a crucial role in coordinating and managing the distributed resources efficiently. One fundamental aspect of these algorithms is the method they employ to control access to shared resources, known as synchronization. Two commonly used approaches for synchronization in distributed systems are token-based and non-token-based algorithms. In this discussion, we will explore the key differences between these two types of algorithms and their implications in distributed systems. What are Token-based Algorithms? Token-based algorithms use a token as a ...
Read More