This repository contains various cloud computing simulations and algorithms, including task scheduling, load balancing, virtualization, replication, and cloud deployment models. The programs demonstrate fundamental cloud infrastructure concepts through Python-based simulations.
- Round-Robin Task Distribution: Distributes
M
tasks acrossN
worker nodes using round-robin scheduling. - Round-Robin Load Balancer: Distributes requests across servers with a delay simulation.
- Least Connections Load Balancer: Assigns new tasks to the server with the fewest active connections.
- Virtualization Class: Lists benefits/drawbacks of virtualization and suggests if it’s beneficial for a scenario.
- Hypervisor Type Identification: Determines if a hypervisor (e.g., VMware, KVM) is Type 1 or Type 2.
- Virtual Server Operations: Simulates virtual server operations (
start
,stop
,reboot
) using threading.
- Synchronous vs. Asynchronous Replication: Simulates how data consistency is maintained or delayed using dictionaries.
- Packet Transmission with Latency: Introduces artificial network latency to simulate cloud-based app delays.
- Cloud Deployment Model Selector: Recommends
Public
,Private
, orHybrid
cloud based on security, budget, and scalability. - IaaS, PaaS, SaaS Simulation: Demonstrates cloud service abstraction using classes.
- Task Aggregation Using Concurrent Futures: Splits a large task across multiple nodes and merges results.
- Cloud CPU Auto-Scaling: Simulates auto-scaling when CPU usage exceeds a threshold.
- Clone the repository:
git clone https://github.com/yourusername/cloud-simulations.git cd cloud-simulations