Distributed Systems Coursework
This repository contains various experiments performed as part of my Distributed Systems coursework. Each experiment demonstrates fundamental distributed computing concepts, including inter-process communication, remote procedure calls, and distributed task management.
Repository Structure
src/com/ds/
– Contains multiple experiments on distributed systems concepts.gRPC_Client-Server/
– Demonstrates client-server communication using gRPC.- Each experiment folder contains a
README.md
file explaining its objective, implementation, and execution details.
Experiments Overview
gRPC Client-Server This experiment focuses on Remote Procedure Calls (RPC) using gRPC which uses protocol buffer as its IDL. It showcases how a client and server interact efficiently in a distributed environment.
Other Experiments (Located in src/com/ds/) Each experiment covers a key topic in distributed systems, including:
- Inter-process communication (IPC)
- Leader election algorithms
- Consensus mechanisms
- Distributed file systems
- Task scheduling in distributed environments
How to Use This Repository
-
Clone the repository: git clone https://github.com/DURGSINGH15/DistributedSystems.git
-
Navigate to the required experiment folder.
-
Refer to the individual
README.md
for detailed execution steps.
Notes
- Some experiments require Gradle for execution (e.g.,
gRPC_Client-Server
). Ensure you have the necessary dependencies installed.
Acknowledgments This coursework was completed as part of my academic curriculum in Distributed Systems, aiming to provide hands-on experience with distributed computing principles.