Единая точка доступа для отработки отказа - PullRequest
0 голосов
/ 14 июня 2009

Это то, чего я пытаюсь достичь, но я недостаточно хорошо знаком с предметом, поэтому, пожалуйста, потерпите меня:)

У меня есть сервер, к которому подключаются некоторые устройства и периодически загружают некоторые данные. Связь осуществляется через обычные TCP-сокеты с использованием запатентованного протокола, который мы разработали для скорости и эффективности. Каждое такое соединение - это, по сути, сеанс, который открыт, пока устройство остается подключенным. Теперь мне нужно (1) спроектировать механизм отработки отказа и (2) увеличить масштаб. Был бы другой серверный узел, который подхватил бы, когда первый экземпляр терпит неудачу. Я смотрел на Терракоту, чтобы сделать легкий кластер. Но что я не понимаю, как устройства будут работать для второго узла? Я мог бы, вероятно, «научить» их пробовать несколько точек доступа ... но это действительно было бы больно, поскольку некоторые из них находятся вне моего контроля. В идеале мне нужно немного магии в середине, которая бы перенаправляла соединение автоматически на любой доступный узел в кластере.

Теперь. Первое, что я хочу знать, это то, как такие инструменты называются в мире. Второе - мне нужно простое готовое решение, желательно бесплатное или с открытым исходным кодом с дружественной коммерческой лицензией. Мы не используем тяжеловесные контейнеры, экземпляр сервера - это связка POJO, связанных с Spring, все работает в одной JVM. В идеале я хотел бы разместить такой волшебный ящик на одном из узлов, выставить один IP / порт для всех устройств и выполнить некоторые настройки. настроить. Возможно ли это или я мечтаю о дешевом решении сложной проблемы?

Ответы [ 2 ]

1 голос
/ 14 июня 2009

Сначала я думаю, что этот вопрос должен быть размещен на serverfault.com , но как только вы спросите здесь, я считаю, что вы ищете какое-то устройство или коробку для балансировки нагрузки.

1 голос
/ 14 июня 2009

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

Попробуйте эту ссылку , например.

...