Building the polling worker
Our worker is essentially looping and polling a queue in Redis. If there is a message in the queue, the worker will then execute the task that has been extracted from the queue. For building the polling worker section, the worker will be creating a struct, inserting the struct into the Redis queue, and then extracting that inserted struct from the queue to print out. This is not our desired behavior but this does mean that we can test to see how our queue insertion works quickly. By the end of the chapter, our HTTP servers will be inserting tasks and our workers will be consuming tasks.
We do not want the worker to be polling the Redis queue constantly without any rest. To reduce the polling to a reasonable rate, we will need to make the worker sleep during each loop. Therefore, we must import the following in the src/main.rs
file to enable us to get our worker sleeping:
use std::{thread, time};
We can now move to the section where the worker is...