Платформа распределенных вычислений (.NET) - Специально для операций с интенсивным использованием ЦП [закрыто]

StackOverflow https://stackoverflow.com/questions/1755180

Вопрос

В настоящее время я изучаю доступные варианты (как с открытым исходным кодом, так и коммерческие) для разработки распределенного приложения.

"Распределенная система состоит из множества автономных компьютеров, которые взаимодействуют через компьютерную сеть". Википедия

Приложение ориентировано на распространение высокоэффективных высокая нагрузка на процессор операции (в отличие от интенсивного использования данных), поэтому я уверен, что решения MapReduce не соответствуют всем требованиям.

Мы были бы весьма признательны за любой фреймворк, который вы можете порекомендовать (+ дайте краткое изложение любого опыта или сравнение с другими фреймворками ).

Это было полезно?

Решение

Фреймворк MPAPI - http://www.codeplex.com/MPAPI

Мои Мысли

  • Кажется, это одно из самых простых решений.
  • Я не вижу никаких признаков поддержки отработки отказа.
  • Имеет открытый исходный код =] и совместим с MONO, УРА!
  • Использует фреймворк "RemotingLite" для улучшения совместимости с mono.
  • Написание приложений для одного компьютера или для нескольких компьютеров (кластеров) одинаково просто.
  • Философия разработчика гласит: "Производительность превыше всего".Так что можно с уверенностью сказать, что он оптимизировался.
  • Постоянно обновляемый фреймворк.

Другие советы

Я был одним из ведущих разработчиков Alchemi.Нам пришлось сменить курс и начать все сначала, и результатом стала платформа Utilify.Концептуально похожая на Alchemi, платформа Utilify основана на уроках, извлеченных из Alchemi, и предоставляет более гибкую модель программирования для создания распределенных приложений .NET в сети Windows.

Пожалуйста, посетите сайт www.utilify.com для получения дополнительной информации.В настоящее время для скачивания доступна бесплатная бета-версия.

С уважением, Кришна.

Платформа Appistry CloudIQ http://www.appistry.com

  • Это позволит сотням машин выглядеть как один вычислительный ресурс.
  • В настоящее время используется в производстве на FedEx для запуска алгоритмов маршрутизации
  • Позволяет писать приложения на C, C ++, Java и .Net
  • Нет единой точки отказа
  • Автоматическое восстановление / повторная попытка неудачных задач

Alchemi "Платформа для грид-вычислений .NET"

http://www.gridbus.org /~alchemi/publications.html

http://sourceforge.net/projects/alchemi/files/

Alchemi - это платформа для грид-вычислений .NET, которая позволяет безболезненно объединить вычислительные мощности компьютеров, подключенных к внутренней сети и Интернету, в виртуальный суперкомпьютер (computational grid) и разрабатывать приложения для запуска в грид.

Краткие заметки:

  • Перестал обновляться в 2007 году в версии 1.0.6 (.NET 2.0).
  • Хорошо документировано, официально это сделано.
  • Использует XML для определения заданий.(В 2007 году было в моде использовать XML для всего)
  • Относительно сложный по сравнению с MPAPI, но не воспринимайте это как большой минус.
  • Потребуется изрядное количество времени, чтобы войти в курс дела.
  • Является открытым исходным кодом =).
  • Является расширяемым и может использоваться совместно с другими кластерными технологиями через брокера Gridbus (http://www.gridbus.org)
  • Кажется, широко используется (см. Публикации http://www.gridbus.org /~alchemi/publications.html) =)

Лазурная Сетка - http://azuregrid.codeplex.com/

ДриадЛИНК это исследовательский проект Microsoft, позволяющий распределять запросы LINQ между несколькими компьютерами, а не только между несколькими ядрами, как это делает Parallel LINQ.

Запись в блоге с кратким примером.

AWS SDK для .NET - http://aws.amazon.com/sdkfornet/

Я думаю, что это облачное предложение и .NET api также могут подойти.Amazon предлагает высокопроизводительные машины (смотрите прайс-лист), что позволило бы делегировать выполнение операций с высокой интенсивностью использования процессора в больших масштабах.

НГрид - http://ngrid.sourceforge.net/

Обзор

NGrid - это платформа грид-вычислений с открытым исходным кодом (LGPL), написанная на C #.

  • независимый от платформы проект Mono .
  • прозрачное многопоточное программирование модель для грид-программирования.
  • физическая сеточная структура и некоторые реализации grid .
  • общие утилиты, как для сетки программирования и реализации сетки.
  • последнее обновление в мае 2008 года
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top