The task is to implement two applications that generate and process data using RabbitMQ.
- REST API application.
- Endpoint POST
/hashesgenerates 40.000 random SHA1 hashes and sends them to RabbitMQ queue for further processing. - Endpoint GET
/hashesreturns the number of hashes from the database grouped by day in JSON.
- Background worker application.
- Connects to RabbitMQ queue and processes messages in parallel using 4 threads.
- Saves messages into the database table
hashes(id, date, sha1).
- Split generated hashes into batches and send them into RabbitMQ in parallel.
- Retrieve hashes from the database without recalculating data on the fly.
