Bo takie rozwiązanie się zawsze
optymalizuje. To nie tak, że co sekundę się wali userowi coś do bazy

Najczęściej takie działania są robione tylko podczas interakcji usera ze skryptem. Po co zawalać tę bazę dla usera, który nie zalogował się od pół roku? Takie coś się robi gdy się on w końcu zaloguje i gdy odwiedza stronę gdzie informacja o nowych jest widoczna. Dodatkowo ustawia się limity. Aplikacja przechowuje ostatni czas aktywności usera i sprawdza, czy w międzyczasie nie pojawiły nowe posty. Jeśli są - dokłada te informacje do puli. Wszystko ponad limit wylatuje. Dodatkowo wszystkie nowe posty które user widzi po wejściu na stronę są usuwane z puli lub, co także częste, wszystkie posty z odwiedzonego tematu są uznawane za przeczytane. Można kombinować w inne strony, ustalając limity na kilka wariantów (albo limit postów, albo tematów czy też dni/godzin wstecz) i wybierając najbardziej odpowiadający nam.