Distributed file system in Golang but it's useless for all intents and purposes and only exists for my personal entertainment.
The project is split into 4 parts:
- Client: The client-side CLI that communicates to the master.
- Master: Acts as a name node; handles metadata and manages the mules.
- Mule: Acts as a worker node; where the data is actually stored.
- Core: Contains compiled protobuf files, and node-handler functions.
# Get all the module dependencies
go get ./..
# Run the master node
go run main.go master
In another terminal(s),
# Run the mule
go run main.go mule
Client is still a WIP lmao