Zależy co masz na myśli gdy chcesz odporności na odwieżanie. Czy jeśli user wejdzie na ten sam temat po godzinie to liczy jako nowe wejście czy nie? A może po 1-2 niach już będzie ok? Jaki można pomysł wykorzystać przy ciastach (bazie, whatever)? To tylko luźna uwaga oczywiście...
Bierzesz tworzysz tablicę gdzie przechowujesz id_tematu jako klucz i jako wartość timestamp ostatnich odwiedzin. Przy odwiedzaniu każdego tematy lub dowolnej akcji usera w ciachu usuwasz wszystkie klucze starsze niż akceptowalny limit (inaczej ciastko byłoby ogromne). Odwiedzając jakiś temat sprawdzasz czy jego id już istnieje w ciasteczku. Jeśli nie to do tematu dodajesz 1 przy odwiedzinach oraz walisz do tablicy id tematu i timestamp odwiedzin. Jeśli istnieje to sprawdzasz timestamp. Jeśli jakimś cudem przekracza akceptowalny limit możesz dodać 1 do licznika, a jeśli nie to olewka. Tak czy inaczej aktualizujesz timestamp dla tego tematu. Dzięki temu temat lubiany przez usera nie powinien być zliczony więcej niż kilka razy przy limicie czasu na 1-2 dni. Oczywiście możesz to zapisywać gdzieś w bazie, ale tak częsty odczyt i zapis mogą nieźle spowolnić bazę. A robienie wymyślnych zabezpieczeń by uodpornić licznik na odświeżanie nie wiem czy jest warte świeczki