![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Всем привет.
Есть архитектурная задача - сделать кэш некоего байт-кода внутри сессион фасада. Просто в тупую тянуть из базы не придётся - будет получаться всякими разными методами. Но суть такая: мы получаем набор данных, можем проверить, соответствует ли текущая запись реалии, можем освежить её. Через данный механизм происходить будет только чтение. И тут, откуда не возьмись(действительно неожиданно лдя меня) - проблема - где держать??? Естественно, напрашивается вариант стэйтфул бина. Но. Для разных бинов, попросивших инфу - будут созданы копии сего стэйтфула, да ещё и будут держать в себе по копии - совсем обратный результат... Надо стэйтфул сделать как бы общим для всех... Но, скорее даже не в стиле синглетона, а в таком виде, чтоб можно было управлять количеством кэшей. То есть: есть стейтлесс фасад - ему один кэш(на все экземпляры) Появляется, допустим, иной фасад, требующий такой же кэш - ему тоже один инстанс. Есть мысли? Гугл и поиск ничерта не подсказал. Кроме того, что стэйтлесс - зло(ну как обычно) В книжках вроде есть, но пока я её куплю.... -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| y3u |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 440 Регистрация: 9.9.2006 Где: Москва Репутация: 7 Всего: 13 |
сделай пул объектов на основе этого бина и все, пул сам будет знать когда кому сколько чего дать
-------------------- В нашей стране настаивать на кореньях, черной смородине, лимонных корках - гораздо эффективнее, чем на правах |
|||
|
||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Ммм... можно подробнее? -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 7 Всего: 54 |
Видимо, y3u имел в виду некий синглтон-пул (кэш), интерфейсом к которому будет stateless бин.
Лучше всего, если у хранимых объектов есть хоть какая-то идентифицирующая их информация, сделать их entity BMP'шками - кэш нахаляву и не зависит от пользователей. З. Ы. Есть еще resource adapters. Молоток - зло. Им можно по пальцу ударить Это сообщение отредактировал(а) w1nd - 18.10.2006, 21:45 -------------------- ![]() ![]() |
|||
|
||||
| chief39 |
|
||||||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Тьху.. Стэйтфул
Ээээ... если бы так... Я же говорил
Просто, наверное, неясно выразился. Объекты эти в базе хранится в plain виде не будут. Готовый объект, который, собственно, и будет кэшироваться - штука сборная. Перед тем, как он возникнет в нужном виде, будут подтягиваться некоторые энтити, парситься, компилиться, сливаться в одно целое и только потом готовый горшок мы уже вешаем сушиться в кэш. Угу. Так пока и делаем. Но всё же... Как-то некошерно выходит что нельзя это естественным путём слепить. Нашёл для вэбсферы в конфигах возможность "разрешить стэйтфул для одновременного обращения разных клиентов", но во-первых, у меня не сфера, во-вторых, хочется стандартными средствами, а не фичами аппсерверов -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
||||||
|
|||||||
| w1nd |
|
|||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 7 Всего: 54 |
Да без разницы Стоп. А я и не говорил о базе. Entity BMP вообще-то может наполняться данными откуда угодно и как угодно. Запихиваете все нужные процедуры в ejbLoad и горшок готов. Это сообщение отредактировал(а) w1nd - 19.10.2006, 14:15 -------------------- ![]() ![]() |
|||
|
||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
Ну я бы так резко не заявлял
От энтити, возможно, будем отказываться понемногу. Также, необходима будет версионность сущностей... И ещё одно... таких кэшей будет несколько... разброс сущностей по "одному из" будет осуществляться отдельным алгоритмом... То есть нужен не просто всеобщий кэш сущности, а возможность держать общий набор данных в памяти доступным для обращений на чтение разными стейтлессами. -------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
| w1nd |
|
||||
![]() Вертилятор ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1077 Регистрация: 22.3.2006 Где: Москва Репутация: 7 Всего: 54 |
Так я и говорю - молотком по пальцу тоже досадно ;) Надо учиться попадать по гвоздю З. Ы.
Все эти задачи, кстати, пока еще решаются с помощью BMP Это сообщение отредактировал(а) w1nd - 23.10.2006, 20:38 -------------------- ![]() ![]() |
||||
|
|||||
| chief39 |
|
|||
![]() карманная тигра ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1631 Регистрация: 20.5.2005 Где: Киев Репутация: 11 Всего: 77 |
-------------------- Люди - это свечи. Они либо горят, либо их - в жопу!(с) |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |