Параллелизм мультиузла в Java

Я записал многопоточную программу Java для решения смущающе параллельной проблемы, таким образом, что она использует все бесплатные циклы ЦП на многоядерном ЦП. Я хотел бы осуществить рефакторинг свое решение так, чтобы оно могло работать на нескольких узлах, все еще сохраняя большинство кода я уже записал.

Я использовал MPI с C в прошлом и был сказан, что это - "корректный" способ решить проблему максимизации циклов ЦП, но я также знаю о других параллельных платформах в Java как RMI и задаюсь вопросом, хороши ли они так же.

Существует ли хороший способ обработать мультиузел и многоядерный параллелизм в Java, где главная цель состоит в том, чтобы усилить большинство циклов ЦП как возможное из кластера?

Править: Я получаю впечатление, что нет никакого простого способа обработать этот материал. Я не удивлен, но я надеялся. :)

18
задан Rich 5 August 2010 в 14:59
поделиться

4 ответа

JMS - хорошее место для начала.

5
ответ дан 30 November 2019 в 08:26
поделиться

Зависит от того, чем вы занимаетесь, и от вашего бюджета, на который вы, возможно, захотите обратить внимание (в произвольном порядке)

См. также:

10
ответ дан 30 November 2019 в 08:26
поделиться

Также рассмотрите Apache Hadoop, он использует MapReduce и хорошо подходит для многих параллельных решений.

4
ответ дан 30 November 2019 в 08:26
поделиться

Вы можете попробовать Hazelcast . Имеет распределенный ExecutorService. Это должно позволить вам добавлять в службу задачи, которые выполняются на любом количестве узлов.

7
ответ дан 30 November 2019 в 08:26
поделиться
Другие вопросы по тегам:

Похожие вопросы: