![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
Girin |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Хочу создать кластер на базе Tomcat , для поддержки распределенных вычислений по сети. Архитектура взаимодействия такая - есть севрлет контейнер, который парсит запросы от клиентов и передает их на обработку удаленным агентам для вычисления по сети. Вопрос какую технологию использовать для связи с удаленным агентами и передачи им определенной подзадачи , чтобы интерфейс взаимодействия был достаточно высокого уровня абстракции и сильно не зависел от специфики распределяемой задачи ? Конкретный набор задач хранится в директориях томката, и может расширяться
Просто ранее занимался распараллеливанием задач на С++ с использованием MPI и Pthreads , но тогда все это выполнялось на одной машине. И в случае с MPI приходилось погружаться в специфику конкретной задачи и распределять с учетом начальных условий, т.е. желаемая переносимость приложения была трудно достижима |
|||
|
||||
COVD |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
что означает "передает их на обработку" ? - редиректит клиента на другой сервер ? - сам пересылает запрос на другой сервер , ждет ответа и, получив/не получив ответ, возвращает его клиенту ? - сам пересылает запрос на другой сервер, и сообщает клиенту, чтобы задание принято/не принято на выполнение ? |
|||
|
||||
Girin |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
В моем случае томкат работает как диспетчер задач и посредник между клиентом и агентами .
То есть выполняет и это
Планирование, сихронизация, сбор результатов - все осуществляется узлом на котором запущен сервлет контейнер |
||||
|
|||||
COVD |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Первое - это синхронный способ - сервер может использовать RMI для общения с агентом, или решения на его основе.
Второе - асинхронный - общение сервера с агентами может реализовываться с использованием messaging систем. Наверное, в качестве универсального решения можно применить messaging для интеграции сервера и агентов. Если же применять application server, то в его составе, насколько я знаю, реализованы оба варианта коммуникации (синхронный\асинхронный). И Томкат будет частью аппсервера, а не отдельным приложением. Это сообщение отредактировал(а) COVD - 19.3.2008, 22:32 |
|||
|
||||
Girin |
|
||||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Да RMI интересный вариант решения попробую его сначала...
Имеется ввиду JMS и ее реализация в виде ActiveMQ ? Еще пока не ясно как абстрагировать распределяемую задачу , использовать сериализацию или определить на удаленных агентах набор тривиальных функций
Можно пояснить .. Вы говорите о серверах приложений навроде JBoss или WebSphere, которые включают контейнер сервлетов и будут предоставлять большую функциональность чем просто томкат ? |
||||||
|
|||||||
COVD |
|
||||||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 26.7.2005 Репутация: 4 Всего: 43 |
Да. А реализаций много.
Как можно противопоставлять сериализацию и функции? Одно необходимо для передачи данных, другое - набор инструкций для операций над данными. Сервер может послать агенту только данные - команду и исходные условия, а агент должен иметь функции ( методы ) для формирования данных, которые будут посланы обратно серверу.
Да. И эта дополнительная функциональность включает в себя встроенный механизм взаимодействия с другими серверами (агентами), которые в данном случае, очевидно, тоже должны быть реализованы на аппсерверах. |
||||||
|
|||||||
Girin |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 81 Регистрация: 6.2.2008 Репутация: нет Всего: нет |
Возможно ли реализовать набор решаемых агентом задач с помощью плагинов(JPF) ?
А если агента реализовать как сервис , на основе Java Service Wrapper и jmdns (для работы с сервисом обнаружения ) ,а для доступа к службе сообщений использовать библиотеки ActiveMQ JMS Provider? Или ставить на каждого агента монстров типа JBoss ? |
||||
|
|||||
mindflyer |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 113 Регистрация: 20.10.2004 Где: Smolensk, Russia Репутация: 3 Всего: 4 |
JBoss сам по себе не такой уж и монстр. Зато при его использовании сразу получишь кучу встроенных вкусностей - помимо уже перечисленных механизмов взаимодействия, ещё кластеризацию, возможность хот-деплоймента (например, модули для новых типов задач) и многое другое.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |