2012-02-02 2 views
3

У нас есть сервер Apache перед сервером Apache Tomcat.Конфигурация разъема Tomcat 7 ajp - деривация initiliazation

При переключении с Tomcat 5.5 на Tomcat 7 мы столкнулись с следующим поведением. - Tomcat 5 - соединение AJP отсутствует, пока Tomcat не будет полностью запущен (2-3 минуты в нашем случае). Это означает, что для любого запроса возвращается статус HTTP 503. - Tomcat 7 - соединения AJP инициализируются при запуске tomcat, но не могут быть обработаны до тех пор, пока Tomcat не будет полностью запущен. Это означает, что запросы накапливаются на сервере Apache.

Мы хотели бы иметь аналогичное поведение с Tomcat 7, как это было с Tomcat 5.5, то есть Tomcat будет откликаться с 503 кодом статуса HTTP для каждого запроса AJP до тех пор, пока tomcat не будет полностью смотреть.

Глядя на конфигурацию коннектора Tomcat 7 AJP http://tomcat.apache.org/tomcat-7.0-doc/config/ajp.html Я не вижу очевидного способа достижения вышеупомянутого поведения. Параметр «bindOnInit» звучит многообещающе, но по умолчанию это уже верно, и это явно не помогает.

ответ

2

Мы увидели ту же проблему, поэтому я попытался установить bindOnInit = false, и на самом деле это похоже на то, что вам нужно (503 с Apache до тех пор, пока Webapp не завершит запуск). Документация не так понятна, но я предполагаю, что «инициация» (истина) встречается гораздо раньше, чем «начата» (ложь). Я уточню, как только мы проверили правильное тестирование (с нашими балансирами нагрузки).

+0

Это, кажется, работает для нас до сих пор! – paulcm

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