Как распространить процесс Java на удаленные серверы - PullRequest
3 голосов
/ 13 сентября 2011

Мой php-сервер получает запросы и должен запускать Java-программу, которая работает от 30 секунд до 5 минут или даже больше. Этот длинный процесс должен быть распределен по доступным серверам в моей локальной сети.

Что мне нужно:

  • очередь заданий (это делается в дБ)

  • Часы БД. Получить уведомление о новой или выполненной работе (чтобы начать другую работу в очереди)

  • Запустите процесс Java на удаленном и доступном компьютере.

Похоже, что это должен быть просмотр БД, так как мне нужно оценить, какой удаленный компьютер доступен, и хранимая процедура БД не сможет выполнить это так просто.

Что является лучшим или, по крайней мере, хорошим способом для достижения этой цели независимым от ОС способом с использованием JAVA.

Полагаю, я мог бы использовать FileWatch и управлять очередью в папке, но она кажется доисторической.

Спасибо

1 Ответ

2 голосов
/ 13 сентября 2011

Я бы использовал очередь JMS. Вы добавляете задачи / сообщения в очередь, и следующий доступный процесс берет задачу, выполняет ее и отправляет обратно любой результат в другой очереди или теме. Это поддерживает прозрачную балансировку нагрузки, и вы можете перезапустить задачи в случае сбоя процесса. Опрос не требуется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...