несколько портлетов, обращающихся к БД

Я новичок во всем этом портлетах, мой вопрос возник из-за того, что наша компания передает такую ​​разработку на аутсорсинг другой компании. и они сталкиваются с этой проблемой, которая заключается в том, что к БД поступает слишком много запросов, и многие портлеты на одной странице подключаются к БД.

Я думаю, что, возможно, есть лучший способ, например, наличие контроллера над всеми этими портлетами, который будет извлекать данные из БД для всех связанных портлетов, а затем сохранять их в сеансе или что-то в этом роде. или, возможно, один портлет (возможно, скрытый), который будет выполнять все вызовы и сохранять значения, которые он получает из БД для каждого портлета, в переменных сеанса.

они используют RAD и сервер WEbsphere Portal. это возможно?

Благодарность


person Saad Alothman    schedule 04.04.2011    source источник


Ответы (1)


Я считаю, что это обычная проблема. Лучшее (с точки зрения надежности и простоты), о котором я мог подумать, - это кэширование доступа к базе данных с использованием некоторых стандартных механизмов кэширования Java: EHCache или DynaCache - если вы хотите придерживаться стека Websphere. Должно быть легко реализовать, очень просто, если вы используете ORM, например Hibernate.

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

person Jaromir Hamala    schedule 05.04.2011