|
|
|
EJB Local and Remote
|
|||
|---|---|---|---|
|
#18+
Все ссылки имеет смысл регистрироваьт где-то на сервере, если они потом стабильно нужны будут. А если в Worker попадают единичные бины, то держать из-за этого ссылки на все локальные инстансы, это какой-то оверхед. Вы меня специально игнорируете? Что мешает бину самому запустить себя в Worker? У вас получается Клиент нашел ссылку на Data Клиент нашел ссылку на Worker Клиент сказал Worker-у обработать Data. Применяем Inversion of Control получаем Клиент нашел Data. Клиент сказал Data обработаться. Data нашел Worker-а и передал ему this. В чем проблема найти на сервере Worker-а? 2 удаленных вызова вместо 3-х. По-моему отличная оптимизация. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2012, 18:18:48 |
|
||
|
EJB Local and Remote
|
|||
|---|---|---|---|
|
#18+
Worker умеет работать только с некоторыми данными, и умеет с ними работать по интерфейсу DataRemote. Таких Worker-ов не один - поэтому "Что мешает бину самому запустить себя в Worker?" дата не значет что надо запускать, это разруливается другим бином. Т.е. изначально есть бин Client, который готовит Data (полностью для всех дальнейших манипуляций) - т.е. реально Data - это некоторые подготовленные (зачитанные) из БД данные + некоторые методы их конвертации и предобработки. А дальше этот Client начинает запускать несколько Worker-ов, которые с этими данными умеют обращаться. Но отдать Data на Worker возможности нет, т.к. 1. Это большой объем, который при клонировании (в случае если Worker на той же ноде) может привести к OutOfMemory, 2. Есть данные (а точнее правила конвертации, строящиеся в runtime), которые не сериализуются. P.S. Ну я в целом понял, что по EJB этого сделать нельзя - соответственно нужно решение сверх спеки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2012, 10:56:11 |
|
||
|
EJB Local and Remote
|
|||
|---|---|---|---|
|
#18+
Понятно стало ещё меньше. Worker и Client в одной JVM, а Data в другой? Так что ли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2012, 11:32:50 |
|
||
|
EJB Local and Remote
|
|||
|---|---|---|---|
|
#18+
Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. Вот собственно как поменять "???" чтобы оно заработало? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2012, 12:41:49 |
|
||
|
|

start [/forum/topic.php?fid=59&gotonew=1&tid=2130607]: |
0ms |
get settings: |
12ms |
get forum list: |
22ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
42ms |
get topic data: |
14ms |
get first new msg: |
9ms |
get forum data: |
4ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 272ms |
| total: | 450ms |

| 0 / 0 |
