2012-07-01 3 views
2

У нас есть распределенная архитектура, где наше приложение работает на четырех экземплярах Tomcat. Я хотел бы знать различные варианты обмена данными между этими экземплярами Tomcat.Связь между экземплярами tomcat (распределенная архитектура)

Подробности: Скажите, что пользователь отправляет запрос, чтобы прекратить прослушивание входящих очередей, это необходимо обменивать с другими экземплярами Tomcat, чтобы они также останавливали своих слушателей. Как это общение может быть сделано через Tomcats?

Спасибо, Midhun

ответ

0

, что лежит на поверхности RMI, HTTP запросы. Кроме того, ИМХО, вы можете попробовать использовать MBeans. Еще одна вещь: вы можете использовать некоторые не связанные с Java вещи, такие как DBus или что-то еще, или даже плоские файлы ... если все котята работают на одной машине. Множество опций ...

1

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

Я рекомендую вам использовать Apache ZooKeeper для решения этих проблем. Рассмотрите возможность установки вашей конфигурации в ZooKeeper. ZooKeeper позволяет вам смотреть за изменения, и если конфигурация была изменена в экземпляре tomcat ZooKeeper, будет уведомлен, и вы можете настроить поведение своего приложения на каждом узле.

Вы можете использовать любое внешнее постоянное хранилище для решения этой проблемы.

Другой возможный способ - реализовать связь между узлами tomcat самостоятельно, но в этом случае у вас возникнет проблема с управлением топологией развертывания: каждый узел tomcat должен знать о других узлах кластера.

Смежные вопросы