Decentralized word processing system.
Client/Server model with decentralized nodes.
Leader is elected using RAFT. Leader communicates with client.
Work splitting and work result communication are done via RabbitMQ.
$ docker pull rabbitmq:3.7-management-alpine
$ ./build.sh
$ docker-compose -f docker-compose.yml up -d
$ docker-compose -f docker-compose.yml stop rabbitmq server1 server2 server3 mqsetup
$ ./clear.sh
Input as a text document.
Split the data across multiple nodes.
Process data and return word count to the user.