Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Кэш в EJB. В сессион фасаде, а-ля стэйтфул "для всех" 
:(
    Опции темы
chief39
Дата 18.10.2006, 16:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 11
Всего: 77



Всем привет.

Есть архитектурная задача - сделать кэш некоего байт-кода внутри сессион фасада.

Просто в тупую тянуть из базы не придётся - будет получаться всякими разными методами.

Но суть такая: 
мы получаем набор данных,
можем проверить, соответствует ли текущая запись реалии,
можем освежить её.

Через данный механизм происходить будет только чтение.

И тут, откуда не возьмись(действительно неожиданно лдя меня) - проблема - где держать???

Естественно, напрашивается вариант стэйтфул бина.

Но. Для разных бинов, попросивших инфу - будут созданы копии сего стэйтфула, да ещё и будут держать в себе по копии - совсем обратный результат... smile

Надо стэйтфул сделать как бы общим для всех...
Но, скорее даже не в стиле синглетона, а в таком виде, чтоб можно было управлять количеством кэшей.

То есть: есть стейтлесс фасад - ему один кэш(на все экземпляры)
Появляется, допустим, иной фасад, требующий такой же кэш - ему тоже один инстанс.

Есть мысли?

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





--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
y3u
Дата 18.10.2006, 17:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 440
Регистрация: 9.9.2006
Где: Москва

Репутация: 7
Всего: 13



сделай пул объектов на основе этого бина и все, пул сам будет знать когда кому сколько чего дать


--------------------
В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах
PM MAIL   Вверх
chief39
Дата 18.10.2006, 17:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 11
Всего: 77



Цитата(y3u @  18.10.2006,  17:14 Найти цитируемый пост)
сделай пул объектов на основе этого бина и все,

Ммм... можно подробнее?


--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
w1nd
Дата 18.10.2006, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вертилятор
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 22.3.2006
Где: Москва

Репутация: 7
Всего: 54



Видимо, y3u имел в виду некий синглтон-пул (кэш), интерфейсом к которому будет stateless бин.

Лучше всего, если у хранимых объектов есть хоть какая-то идентифицирующая их информация, сделать их entity BMP'шками - кэш нахаляву и не зависит от пользователей.

З. Ы. Есть еще resource adapters.

Цитата(chief39 @  18.10.2006,  16:12 Найти цитируемый пост)
что стэйтлесс - зло

Молоток - зло. Им можно по пальцу ударить smile

Это сообщение отредактировал(а) w1nd - 18.10.2006, 21:45


--------------------
user posted imageuser posted image
PM MAIL ICQ   Вверх
chief39
Дата 19.10.2006, 12:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 11
Всего: 77



Цитата(w1nd @  18.10.2006,  20:33 Найти цитируемый пост)
Цитата(chief39 @  18.10.2006,  16:12 Найти цитируемый пост)
что стэйтлесс - зло

Молоток - зло. Им можно по пальцу ударить

Тьху..  Стэйтфул

Цитата(w1nd @  18.10.2006,  20:33 Найти цитируемый пост)
Лучше всего, если у хранимых объектов есть хоть какая-то идентифицирующая их информация, сделать их entity BMP'шками - кэш нахаляву и не зависит от пользователей.

Ээээ... если бы так... 

Я же говорил
Цитата(chief39 @  18.10.2006,  16:12 Найти цитируемый пост)
Просто в тупую тянуть из базы не придётся - будет получаться всякими разными методами.

Просто, наверное, неясно выразился.

Объекты эти в базе хранится в plain виде не будут.
Готовый объект, который, собственно, и будет кэшироваться - штука сборная.
Перед тем, как он возникнет в нужном виде, будут подтягиваться некоторые энтити, парситься, компилиться, сливаться в одно целое и только потом готовый горшок мы уже вешаем сушиться в кэш.


Цитата(w1nd @  18.10.2006,  20:33 Найти цитируемый пост)
З. Ы. Есть еще resource adapters.

Угу. Так пока и делаем.
Но всё же... Как-то некошерно выходит что нельзя это естественным путём слепить.

Нашёл для вэбсферы в конфигах возможность "разрешить стэйтфул для одновременного обращения разных клиентов", но во-первых, у меня не сфера, во-вторых, хочется стандартными средствами, а не фичами аппсерверов



--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
w1nd
Дата 19.10.2006, 14:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вертилятор
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 22.3.2006
Где: Москва

Репутация: 7
Всего: 54



Цитата(chief39 @  19.10.2006,  12:14 Найти цитируемый пост)
Тьху..  Стэйтфул

Да без разницы smile Готовить не умеют, вот и говорят.


Цитата(chief39 @  19.10.2006,  12:14 Найти цитируемый пост)
Я же говорилЦитата(chief39 @  18.10.2006,  16:12 )Просто в тупую тянуть из базы не придётся - будет получаться всякими разными методами.Просто, наверное, неясно выразился.

Стоп. А я и не говорил о базе. Entity BMP вообще-то может наполняться данными откуда угодно и как угодно. Запихиваете все нужные процедуры в ejbLoad и горшок готов.


Это сообщение отредактировал(а) w1nd - 19.10.2006, 14:15


--------------------
user posted imageuser posted image
PM MAIL ICQ   Вверх
chief39
Дата 23.10.2006, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 11
Всего: 77



Цитата(w1nd @  19.10.2006,  14:15 Найти цитируемый пост)
Да без разницы smile Готовить не умеют, вот и говорят.

Ну я бы так резко не заявлял smile Толпы стэйтфулов и в самом деле - тяжкая вещь smile


Цитата(w1nd @  19.10.2006,  14:15 Найти цитируемый пост)
Entity BMP вообще-то может наполняться данными откуда угодно и как угодно. Запихиваете все нужные процедуры в ejbLoad и горшок готов.

От энтити, возможно, будем отказываться понемногу.

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


--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
w1nd
Дата 23.10.2006, 17:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Вертилятор
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 22.3.2006
Где: Москва

Репутация: 7
Всего: 54



Цитата(chief39 @ 23.10.2006,  16:29)
Ну я бы так резко не заявлял smile Толпы стэйтфулов и в самом деле - тяжкая вещь smile

Так я и говорю - молотком по пальцу тоже досадно ;) Надо учиться попадать по гвоздю smile 

З. Ы.

Цитата(chief39 @ 23.10.2006,  16:29)
Также, необходима будет версионность сущностей...
И ещё одно... таких кэшей будет несколько... разброс сущностей по "одному из" будет осуществляться отдельным алгоритмом...
То есть нужен не просто всеобщий кэш сущности, а возможность держать общий набор данных в памяти доступным для обращений на чтение разными стейтлессами. 

Все эти задачи, кстати, пока еще решаются с помощью BMP smile 



Это сообщение отредактировал(а) w1nd - 23.10.2006, 20:38


--------------------
user posted imageuser posted image
PM MAIL ICQ   Вверх
chief39
Дата 23.10.2006, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


карманная тигра
***


Профиль
Группа: Участник Клуба
Сообщений: 1631
Регистрация: 20.5.2005
Где: Киев

Репутация: 11
Всего: 77



Цитата(w1nd @  23.10.2006,  17:18 Найти цитируемый пост)
Надо учиться попадать по гвоздю

Безусловно...


--------------------
Люди - это свечи. Они либо горят, либо их - в жопу!(с)

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0521 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.