Я бы хотел, чтобы кто-то кое-что прояснил для меня:
Существует два вида таймаутов, которые существуют во время запросов / ответов SOAP:
1- Время ожидания соединения
2- Тайм-аут чтения
Это относится как минимум к Axis1 / Axis2, которую я сейчас использую.
Тайм-аут соединения происходит, когда клиент не может подключиться к рассматриваемому веб-сервису в пределах установленного значения тайм-аута соединения, что в конечном итоге приводит к возникновению следующего исключения:
Не удалось подключиться к хосту в течение времени ожидания «value».
Что касается таймаута чтения, я действительно не уверен в этом, и я не знаю, какое предположение верно. Давайте рассмотрим сценарий, например, в котором клиент отправляет данные в веб-службу, которая, в свою очередь, обрабатывает данные, проверяет их работоспособность, вставляет их в базу данных, когда они есть, и затем веб-служба отправляет некоторые данные. вернуться к клиенту. В итоге мы имеем значительное количество времени обработки на сервере и значительные данные, которые отправляются туда и обратно между клиентом и веб-службой.
Что я не могу понять, это когда исключение тайм-аута чтения выдается клиентом?
1- Может ли это случиться, когда клиент все еще находится в процессе маршалинга объектов, отправляемых веб-службе?
2. Может ли это произойти во время процесса, когда веб-служба уже начала записывать свой ответ в открытый сокет?
Я действительно могу оценить четкие ответы на этот вопрос. Заранее большое спасибо.