IIS, веб-сервисы, ошибка тайм-аута - PullRequest
0 голосов
/ 30 марта 2010

У нас проблема с веб-приложением ASP.NET, которое использует веб-сервисы другой системы. Я опишу архитектуру нашей системы: у нас есть веб-приложение и службы Windows, которые используют одни и те же веб-службы. - Служба Windows работает постоянно и отправляет информацию в эти веб-службы раз в час. - Веб-приложение предназначено для пользователей, чтобы отправлять ту же информацию в ручном режиме.

Проблема в том, что когда пользователь иногда пытается отправить информацию в веб-приложении в ручном режиме, .NET выдает исключение «Время истекло» (web?). В это время служба Windows успешно отправляет всю необходимую информацию этим веб-службам. ИТ-персонал, который поддерживает эти веб-службы, утверждает, что в то время не было никаких запросов от нашего веб-приложения. Затем мы перезапустили IIS (iisreset), и все стало работать нормально. Эта ситуация повторяется все время. На сервере нет антивируса или брандмауэра. Мое предположение, что что-то не так с IIS, патчами, конфигурацией или чем-то еще? Единственное, что есть, это то, что есть запросы, которые могут длиться не менее 2 минут (время ожидания ответа веб-службы).

Мы пытались воспроизвести эту ситуацию на наших локальных тестовых серверах, но все работает нормально. ОС: Windows Server 2003 R2 .NET: 3,5

1 Ответ

0 голосов
/ 30 марта 2010

В веб-приложении должна быть базовая запись HttpBinding в файле Web.config, касающаяся веб-службы, которую вы хотите использовать.

Есть несколько атрибутов, которые могут помочь closeTimeout openTimeout ReceiveTimeout SendTimeout

см. Здесь их значения: http://msdn.microsoft.com/en-us/library/ms731361.aspx

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...