Назад | Перейти на главную страницу

Справка по настройке коннектора Tomcat / CF10 / IIS7.5 (ошибки 503)

Проблема: По прошествии неопределенного времени все веб-сайты, работающие в пуле приложений, возвращают 503 ошибки, поскольку IIS остановил пул из-за быстрых сбоев из пула. Увеличение количества отказов с 5 до 50 все еще не решает проблему.

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

A process serving application pool 'domain.com' suffered a fatal communication error
with the Windows Process Activation Service. The process id was 'XXXX'. The data field
contains the error number

A process serving application pool 'domain.com' terminated unexpectedly. The process id
was 'XXXX'. The process exit code was '0xff'.

Система: IIS 7.5, Coldfusion 10 (подключается через Tomcat), Win Server 2008

Сначала я думал, что это произошло из-за ошибки CF, о которой было сообщено и впоследствии исправлено в HotFix 4. Однако моя проблема все еще оставалась после проблемы. (До появления проблемы в журналах ошибок CF было несколько ошибок getRealPathFromConn, однако после обновления эти ошибки исчезли, но пул приложений остановился.) Я провел обширные поисковые запросы / обсуждения проблемы на различных форумах (Adobe / Stack) и теперь я пытаюсь здесь.

Что я сделал до сих пор:

В связи с этой статьей: http://blogs.coldfusion.com/post.cfm/tuning-coldfusion-10-iis-connector-configuration С тех пор я изменил тайм-аут пула соединений на 60 секунд как в server.xml, так и в worker.properties.

Установите Rapid Fail в IIS на 50.

Обновлен CF до последней версии.

Вопросы):

Как лучше всего определить причину проблемы? (Я предполагаю, что на сервере закончились доступные подключения, но как я могу точно узнать, что вызывает отправку ошибок в IIS.)

Может ли кто-нибудь указать мне в правильном направлении, какие элементы я мог бы настроить в worker.properties, server.xml и т.д., которые я не пробовал?

Как я могу точно узнать, что коннектор действительно вызывает ошибку в IIS? Согласно моему обсуждению в этой ветке (http://forums.adobe.com/thread/1023068) (Пользователь Ли Бартельме) Мне помогли, и другой пользователь указал, что проблема именно в этом. Читая другие темы здесь и в других местах в Интернете, действительно кажется, что связь может иметь место, но может быть что-то еще.

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

(Примечание: когда пользователь запрашивает страницу, и эта страница извлекает три ресурса из domain.com/assets, давайте представим себе три таблицы стилей, разве это не использует три соединения или только одно? Или я неправильно понимаю, что такое связь?)

Если вам нужна другая информация, дайте мне знать, что предоставить. Все мои файлы установлены Coldfusion по умолчанию, за исключением того, что в моем worker.properties worker.cfusion.connection_pool_timeout = 60 и мой server.xml имеет <Connector port="8012" protocol="AJP/1.3" redirectPort="8445" tomcatAuthentication="false" connectionTimeout="60000" /> на месте <Connector port="8012" protocol="AJP/1.3" redirectPort="8445" tomcatAuthentication="false" />. (Добавлен таймаут подключения.)

Кроме того, я разработчик, а не администратор сервера, однако мне поручено поддерживать работу нашего сервера, поэтому, пожалуйста, будьте осторожны при объяснении вещей и предполагайте, что я не знаю терминов / элементов / файлов, не указанных в моем вопросе.