#java #session #liferay #liferay-6 #portlet
#java #сеанс #liferay #liferay-6 #портлет
Вопрос:
У меня есть страница поиска, которая заполняет результаты поиска.
Я могу перенаправить на другие страницы с экрана поиска.
Когда пользователь хочет вернуться к экрану поиска, я хочу показать те же результаты поиска.
Очевидный вариант, который звонит, — это сохранение в сеансе. Это хороший дизайн?
Возможно ли хранить такой объем данных в сеансе в liferay? Как? Любые указатели очень ценятся!
Ответ №1:
Возможно ли это? ДА. Просто выделите достаточно памяти для размера сеанса, умноженного на количество одновременных пользователей. Конечно, сначала вычислите, если это возможно. При необходимости оптимизируйте. Кроме того, имейте в виду, что два одновременных поиска на отдельных вкладках, которые открыты одновременно, могут легко мешать друг другу.
Моя рекомендация заключалась бы в том, чтобы сначала выяснить, не можете ли вы сохранить только условия поиска и, возможно, страницу результатов, и снова выполнить поиск, когда / если потребуется. Или просто отслеживайте все предыдущие запросы пользователя. Таким образом, вам это даже не нужно в сеансе, но вы можете сохранить его в базе данных с помощью идентификатора пользователя (для зарегистрированных пользователей) или идентификатора сеанса (для анонимных пользователей)