Skip to main content

distributed file system based on kademlia dht

Project description

Python Version Code Style Poetry Version Docker Support Docker Pulls Docker Stars Docker Image Size Visits Contributors Release Version Documentation Package Version Downloads Release Date Code Size

Distributed file system based on https://github.com/bmuller/kademlia for the final project of distributed systems

Documentation

https://geekslabtech.github.io/kade-drive/

Basic Usage

  • Clone the repo and run poetry install
  • Run poetry run server in one pc or several pc in a local network
  • Run poetry run cli in any pc of the network and start playing with the system

Usage with docker

  • Build the image with make docker or pull it from docker.hub docker pull joramas/kade-drive:latest
  • Run make shell to start the Docker container with an interactive Bash shell
  • Now you can run poetry run server to start a server or poetry run cli

Installation

pip install kade-drive

Server

from kade_drive.server import start_server

start_server()

Client

Note: Make sure that there exist at least a server in the local network

from kade_drive.cli import ClientSession

client = ClientSession()
client.connect()
response, _ = client.put(4, 5)
# If true, it means that the value was setted correctly, false otherwise
assert response is True
value, _ = client.get(4)
assert value == 5

Tests

To run tests make shure that there is at least one server in the network.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kade_drive-0.9.0.tar.gz (30.8 kB view hashes)

Uploaded Source

Built Distribution

kade_drive-0.9.0-py3-none-any.whl (36.5 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page