Идея с Play состоит в том, чтобы рассеять необходимость сеанса и хранения большого количества информации в памяти.Проблема с подходом в оперативной памяти заключается в том, что вы привязываете пользователя к определенному серверу, на котором хранятся его данные, тогда как подход с воспроизведением без участия означает, что вы можете легко масштабировать по горизонтали, не беспокоясь о зависающих сеансах и т. П.
У вас есть следующие варианты: хранить временные данные во временной базе данных, к которой можно получить доступ через userId или другой уникальный идентификатор пользовательского сеанса.Эта база данных будет эквивалентом вашего сеанса на стороне сервера.использовать кеш.Однако идея кеша состоит в том, что если информация не находится в кеше, она может быть взята из базы данных (или другого источника).Кеш не должен гарантировать, что данные будут доступны.Если в случае кэша в памяти (например, ehcache), если у вас есть набор серверов с балансировкой нагрузки, вы не сможете гарантировать, что все запросы возвращаются на один и тот же сервер, поэтому данные в кэше могут быть недоступны навсе серверы для определенного сеанса.
Ответ на ваш вопрос зависит от вашего варианта использования, но я думаю, что база данных - ваш лучший подход, основанный на предоставленной вами информации.