из документации по игре: http://www.playframework.org/documentation/1.1.1/cache
Play has a cache library and will use Memcached when used in a distributed environment.
If you don’t configure Memcached, Play will use a standalone cache that stores data in the JVM heap. Caching data in the JVM application breaks the “share nothing” assumption made by Play: you can’t run your application on several servers, and expect the application to behave consistently. Each application instance will have a different copy of the data.
Вы можете поместить любой объект в кеш, как в следующем примере (в этом примере из документа http://www.playframework.org/documentation/1.1.1/controllers#session, вы используете сеанс.getId () для сохранения сообщений для каждого пользователя)
public static void index() {
List messages = Cache.get(session.getId() + "-messages", List.class);
if(messages == null) {
// Cache miss
messages = Message.findByUser(session.get("user"));
Cache.set(session.getId() + "-messages", messages, "30mn");
}
render(messages);
}
Поскольку это кеш, а не сеанс, вы должны принять во внимание, что данные могут быть больше недоступны, и есть какое-то средство для их извлечения.это еще раз откуда-то (модель сообщения, в данном случае)
В любом случае, если у вас достаточно памяти, и это предполагает короткое взаимодействие с пользователем, данные должны быть там, а если это не так, вы можете перенаправитьпользователь в начале мастера (вы говорите о какой-то странице мастера, не так ли?)
Имейте в виду, что игра, с ее подходом без учета состояния без участия, на самом деле вообще не имеет сессии под нейон просто обрабатывает файлы cookie, поэтому может принимать только строки ограниченного размера