LPUSH key value1 value2 .... add multiple values to key
LRANGE key 0 -1 takes all the elements in the linked list, where 0 represents the first element and -1 represents the last element.
BLPOP key1 [key2] timeout removes and gets the first element of the list, if the list has no elements it will block the list until the wait times out or an element that can be popped is found