2016-09-05 11 views
0

Мне известно о выполнении простой распределенной задачи (с использованием службы Distributed Executor), например here и here. Однако используемый механизм состоит в сериализации вызываемого и переноса его в пункт назначения для выполнения, поскольку я сказал, что это работает для простых случаев, много раз, когда не было бы возможности разобрать все, например, из вызываемых множеств классов, было бы направлено на выполнение задачи, в этом случае все должно быть перенесено (много раз невозможно, даже если это возможно, потребуется много времени, чтобы перевезти туда, там, убив цель), то, что потребуется, вместо этого следует предположить, что классы существуют в целевой системе и просто ссылаются на нее (как работает хауоп), Я не уверен если существует такая модель исполнения в бесконечности?Выполнение распределенной задачи Infinispan

+0

Создать проблему с командой Infinispan https://issues.jboss.org/browse/ISPN-7000 – craftsmannadeem

ответ

1

Если вы предоставляете экстернализаторы для этих вызовов, а оба вызывающих и экстернализаторы настроены и развернуты во всех узлах (обязательно), нет необходимости отправлять эти классы. Подробная информация о том, как определить экстернализаторы, можно найти here.

+0

Я хочу избежать сериализации/экстернализации .. для простого приветствия мира, как в случае, это нормально, однако для реального времени это нецелесообразно/практично/рекомендуется ... например, ваш вызываемый будет разговаривать с бизнес-слоем, который, в свою очередь, будет говорить с слоем dao/внешним слоем, плюс он будет использовать тонны классов, чтобы выполнить работу ... сериализация/экстернализируя все эти классы только для того, чтобы сделать бесконечный счастливый, было бы большим нет нет. serealizing/экстернализация только параметры/данные были бы прекрасны, как это работает в hadoop ... любые мысли ?? – craftsmannadeem

+0

Отправка вашего объекта бизнес-слоя через провод всегда плохая идея. Вместо этого вы должны извлечь минимальный набор объектов, необходимых для вашей задачи (на этом этапе может быть задействован значительный рефакторинг), сделать эту задачу Externalizable и использовать ее для распределенного выполнения. Если это невозможно в вашем случае, вы можете рассмотреть возможность разделения вычислений на шаги (возможно, связанные с очередями). В этом случае найдите некоторую информацию о архитектуре, управляемой событиями (с некоторыми новыми концепциями, такими как Reactive stuff и т. Д.). – altanis

+0

Кстати, если вам нравится, как это работает с Hadoop, вы можете использовать Infinispan в качестве backend для Hadoop, предоставляя вам возможность хранить данные в памяти. См. [Здесь] (https://github.com/infinispan/infinispan-hadoop), и некоторые примеры можно найти здесь (https://github.com/infinispan/infinispan-hadoop/tree/master/samples/) , Мы также опубликовали несколько сообщений в блоге об интеграции с Hadoop, проверьте [здесь] (http://blog.infinispan.org/search/label/hadoop). –