Kitek's Page Blog programisty / webdeveloper'a

Redis - ograniczone kolekcje

Pracując nad aplikacją wykorzystującą Redis’a potrzebowałem prostego mechanizmu umożliwiającego przechowywanie kilkuset ostatnich logów. Istotne było ograniczenie maksymalnej ich liczby, a także zapewnienie odpowiedniej rotacji. Dzięki zastosowaniu list i poleceń: lpush i ltrim możliwe jest stworzenie ograniczonej kolekcji.

var rc = redis.createClient("host", "port"),
    cacheName = "my-logs",
    maxLogSize = 100,
    logData = {"key":"value"};

rc.lpush(cacheName, JSON.stringify(logData));
rc.ltrim(cacheName, 0, maxLogSize);