SOAP «ошибка при получении http заголовков»: как мне заподозрить решение о отключении поддержки активности? - PullRequest
0 голосов
/ 02 февраля 2012

Я устраняю неисправность существующего веб-сервиса.Ранее он работал просто отлично, но теперь запросы на основе SOAP к базе данных postgreSQL приводят к ошибке «неизвестная ошибка: Ошибка выборки заголовков http».

При поиске этой проблемы я наткнулся на следующий совет:

Когда вы получаете ошибки типа: «Неустранимая ошибка: Uncaught Исключение SoapFault: [HTTP] Ошибка получения заголовков http» после нескольких (длительных) вызовов SOAP, проверьте конфигурацию вашего веб-сервера.

Иногда веб-серверы "KeepAlive" -Setting имеют тенденцию приводить к этой ошибке.Для SOAP-сред я рекомендую отключить KeepAlive.

Подсказка: может быть сложно создать выделенный виртуальный хост для ваших SOAP-шлюзов и отключить keepalive только для этого виртуального хоста, потому что для обычных веб-страниц Keepalive - это хорошее ускорение.

Я не смог выяснить, как именно вы отключите KeepAlive или где этот параметр будет установлен.Я пробовал grep -i "keepalive" /usr/share/tomcat5/conf/*, результат отрицательный.

Возможно, из-за изменчивости серверной среды это вопрос для моего системного администратора, но у меня есть права root.

Спасибо за вашу помощь, стек!

1 Ответ

2 голосов
/ 02 февраля 2012

В вашем файле Tomcat server.xml установите атрибут maxKeepAliveRequests на 1 на ваших коннекторах HTTP, чтобы эффективно отключить поддержку активности.

Для получения дополнительной информации:

http://tomcat.apache.org/tomcat-5.5-doc/config/http.html#Standard_Implementation

...