powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / EJB Local and Remote
4 сообщений из 29, страница 2 из 2
EJB Local and Remote
    #38030837
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все ссылки имеет смысл регистрироваьт где-то на сервере, если они потом стабильно нужны будут. А если в Worker попадают единичные бины, то держать из-за этого ссылки на все локальные инстансы, это какой-то оверхед.

Вы меня специально игнорируете? Что мешает бину самому запустить себя в Worker?

У вас получается
Клиент нашел ссылку на Data
Клиент нашел ссылку на Worker
Клиент сказал Worker-у обработать Data.

Применяем Inversion of Control получаем
Клиент нашел Data.
Клиент сказал Data обработаться.
Data нашел Worker-а и передал ему this.
В чем проблема найти на сервере Worker-а? 2 удаленных вызова вместо 3-х. По-моему отличная оптимизация.
...
Рейтинг: 0 / 0
EJB Local and Remote
    #38031345
bolgare
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Worker умеет работать только с некоторыми данными, и умеет с ними работать по интерфейсу DataRemote.
Таких Worker-ов не один - поэтому "Что мешает бину самому запустить себя в Worker?" дата не значет что надо запускать, это разруливается другим бином.

Т.е. изначально есть бин Client, который готовит Data (полностью для всех дальнейших манипуляций) - т.е. реально Data - это некоторые подготовленные (зачитанные) из БД данные + некоторые методы их конвертации и предобработки.
А дальше этот Client начинает запускать несколько Worker-ов, которые с этими данными умеют обращаться.
Но отдать Data на Worker возможности нет, т.к. 1. Это большой объем, который при клонировании (в случае если Worker на той же ноде) может привести к OutOfMemory, 2. Есть данные (а точнее правила конвертации, строящиеся в runtime), которые не сериализуются.

P.S. Ну я в целом понял, что по EJB этого сделать нельзя - соответственно нужно решение сверх спеки.
...
Рейтинг: 0 / 0
EJB Local and Remote
    #38031426
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понятно стало ещё меньше.
Worker и Client в одной JVM, а Data в другой? Так что ли?
...
Рейтинг: 0 / 0
EJB Local and Remote
    #38031563
bolgare
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
@Stateless 
Client{
   public void invoke(){
        Data data = ???
        /*делаем кучу манипуляций по созданию этой Data*/
        /*теперь хотим ее отправить на обработку*/
       DataRemote remote = ??? (data)
       Worker worker = ctx.lookup(....);
       worker.invoke( remote );
       worker = ctx.lookup(....); //другой worker
       worker.invoke( remote );
   }
}


Вот собственно как поменять "???" чтобы оно заработало?
...
Рейтинг: 0 / 0
4 сообщений из 29, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / EJB Local and Remote
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]