Det finns ett vanligt mönster som löser detta problem ganska bra.
Använd sorterade uppsättningar och använd en tidsstämpel som poäng. Det är då trivialt att ta bort objekt efter poängintervall, vilket kan göras med jämna mellanrum, eller endast vid varje skrivning, med läsningar som alltid ignorerar elementen utanför intervallet, genom att endast läsa ett antal poäng.
Mer här:https://groups.google.com/forum/#!topic/redis-db/rXXMCLNkNSs