Distributed Storage System

Second year project involving the development of a distributed storage system written in Java. The idea was to have data stored in a number of locations to allow redundancy. The program uses an algorithm to automatically redistribute files to ensure the system stays within the storage requirements.

Topics Explored:

Multi-threading / thread safety Java web sockets for data and message transfer Balancing Algorithms