(мне кажется) у меня была похожая проблема.Я использовал SOAP для получения запросов на стороне PHP от Java-сервера (это отправляло запросы).
Вопрос для вас: нужно ли отправлять ответ ACK (подтверждение) обратно?Если да, я думаю, что ваши запросы истекают.
Вот что случилось со мной:
На стороне Java он ожидал ответа ACK менее чем через 30 секунд, иначе произойдет ошибка, и он отправит запрос повторно.
На стороне PHP, даже несмотря на то, что я отправил ответ ACK, как только получил запрос SOAP, PHP не отправит его до конца выполнения скрипта.Это связано с тем, что PHP является однопоточным языком.
Чтобы обойти это, я принял запрос SOAP, проанализировал его в БД и отправил ответ ACK.Затем запустите другой скрипт (демон) для обработки запроса SOAP.Это хак, чтобы обойти мою проблему.
Надеюсь, что это может пролить свет на вашу проблему.
Кстати, это было для Salesforce (сторона Java) и их PHP Toolкомплект (API)