Какой контейнер вы используете ?? Обычно это реализовано из коробки. Например, вы можете настроить его следующим образом в tomcat (conf / web.xml):
<session-config>
<session-timeout>30</session-timeout>
</session-config>
Сессии старше 30 минут будут отменены.