Я занимаюсь разработкой веб-приложения на JAVA EE 6 с помощью SEAM 3, используя полный профиль Glassfish 3, JSF на внешнем интерфейсе.Мой главный вопрос заключается в том, что у каждого пользователя, вошедшего в систему, есть почтовый ящик, почти как Facebook, который постоянно обновляется через ajax. Теперь мой вопрос.Пока у меня есть bean-компонент CDI @SessionScoped @Named
, в котором хранятся сообщения, поэтому я раздуваю сеанс пользователя, сохраняя все его сообщения здесь, в конечном итоге они синхронизируются.Я мог бы также вызвать службу EJB, которая получает входящие сообщения для каждого пользователя каждый раз, когда вызывается запрос ajax, и надеюсь, что он будет использовать кэш для загрузки оттуда сообщений вместо того, чтобы заполнять мою базу данных запросами на запрос ajax.У меня вопрос, должен ли я сделать это:
В моем cdi bean:
public List<Message> getInbox() {
return inbox; //where inbox is a field that holds all the messages
}
или это:
public List<Message> getInbox() {
return messagingService.findInbox(userdId); //stub to stateless EJB fetching the inbox
}
Другими словами, я должен хранить входящиев сеансе или просто получить его каждый раз?(Учтите, что я буду использовать опрос ajax, и у меня будет примерно 10 запросов в минуту на пользователя)