- Clone the repository
git clone https://github.com/DistributedSystemsGroup-IITKGP/Distributed-Queue.git- Setup Virtual Environment
python -m venv .venv- Activate virtual env
source .venv/bin/activate- Run Server
python3 main.py- Test
- To test server endpoints
./test_PartA.sh - To test clientSDK
python3 testSDK.py
- Run Unit Test
- Change the db.config to test on test database
- Run Command:
python3 -m unittest discover tests - For individual modules run Command:
python3 -m unittest tests.{module_name}
- Server_in_memory - This server only uses in memory queue and is not persistant
- Server_persistent - This server only uses database to serve user requests and hence is slower compared to in-memory server
- Server_backup - This server uses both in memory queue and database to keep backup. It has improved latency over server_persistent
This design is shown in below diagram:
The schema of used database is shown below:

