2012-03-19 7 views
5

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

Моим текущим решением для этого является ping серверы приложений каждые несколько минут, и если я не получу ответа, удалите их из списка доступных серверов. Есть ли лучший способ контролировать состояние этих серверов? Должен ли я чаще ping или сервер приложений постоянно информировать сервер балансировки нагрузки?

ответ

5

Регулярно выполняйте нулевую транзакцию. Pinging действительно недостаточно, он использует только стек TCP/IP, и я видел операционные системы в состояниях, в которых был TCP/IP, но не было приложений и даже не было части самого стека ОС. Выполнение транзакции выполняет все. Включите базу данных в нулевую транзакцию.

+0

Будет ли нулевая транзакция простой GET, которая просто ответит 200 OK? –

+0

@SotiriosDelimanolis Это была бы транзакция с нулевым значением, но, как я уже сказал выше, что-то, что связано с базой данных, было бы более полным, скажем, SELECT ... LIMIT 1. – EJP

+0

Мой сервлет уже выполняет запрос MySQL «НАЧАЛО ПЕРЕВОД» на база данных перед обработкой запроса, поэтому я уже закрыт. Спасибо за ответ. –

0

Сначала убедитесь, ваш сервер ISN DDOS attrack защищен, если зависит от вас подключения приложений времени сред редактирования сохранить жизнь время

Тогда вы должны изучить около precock MPM, я думаю, что это даст вам лучшее решение

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