Lift хранит информацию о состоянии в сеансе, поэтому после разрушения сеанса состояние, связанное с этим сеансом, исчезает.
В рамках сеанса Lift отслеживает каждую страницу, для которой выделено состояние (например, отображение междукнопка ajax в браузере и функция на сервере) и пульс от браузера.Функции для страниц, которые не видели пульса в течение 10 минут, не имеют ссылок, поэтому JVM может собирать их.Все это настраивается, так что вы можете изменить частоту сердечных сокращений, продолжительность жизни функции и т. Д., Но на практике значения по умолчанию работают достаточно хорошо.
С точки зрения взрыва сеанса, да ... это незначительная проблема,Популярные сайты (включая http://demo.liftweb.net/) испытывают это.Пример кода (см. http://github.com/lift/lift/tree/master/examples/example/) обнаруживает сеансы, которые были созданы одним запросом, а затем отменены, и заканчивает их рано.Я использую demo.liftweb.net с размером кучи 256 МБ (что соответствует VPS 512 МБ), и время от времени число сеансов увеличивается более 1000, но это быстро сокращается для трафика из поисковых систем.