GWT-приложение: общесерверный контекст, где выполнить начальный запрос и сохранить его результат, чтобы каждый сеанс позднее получал к нему доступ? - PullRequest
0 голосов
/ 24 июня 2011

Я занимаюсь разработкой приложения GWT 2.1 с использованием сервера приложений GlassFish.

Вся музыка запускается, когда кто-то запрашивает веб-страницу: пользовательский интерфейс создается, он вызывает методы на стороне сервера, которые запрашивают базу данныхи tutti quanti.

Теперь мне нужен общесерверный контекст, где раз и навсегда выполнить первоначальный запрос и сохранить его результат в памяти, чтобы каждый сеанс позднее получал к нему доступ.Код, который я хочу запустить, является Java-кодом на стороне сервера.Допустим, он запускается при запуске сервера приложений.Или, что еще более незаметно, когда веб-страница запрашивается впервые с момента запуска сервера приложений.

Исходный код создает большое древовидность и требует много времени для запуска.Древесина не изменяется и одинакова для всех пользователей.Поэтому я хочу построить его только один раз, а затем прочитать.

1 Ответ

1 голос
/ 24 июня 2011

Действительно зависит от того, как вы генерируете решение.

у вас есть по крайней мере 3 варианта -

1) Постоянство базы данных - вы можете сохранить решение в базе данных.

2) XML - (предварительно) вычислить решение, сохранить его в файле XML, получить доступ к документу xml и использовать решение

3) Создать и сохранить решение в статическом классе нана стороне сервера.Используйте сервлеты для доступа к этому статическому классу.(Проблема, если сервер выйдет из строя, вы потеряете решение и будете вынуждены пересчитывать каждый раз при перезапуске сервера)

Если решение является однократным вычислением, я бы предпочел использовать решение 1 или 2.Хотя дополнительная информация будет полезна для определения правильного решения для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...