У меня есть какое-то программное обеспечение, которое потребляет информацию из различных других систем, которыми мы управляем.
Один из серверов, на которых работает наше программное обеспечение, внезапно прекратил общаться с двумя из наших наборов служб и выдает ошибку:
The underlying connection was closed: A connection that was expected to be kept alive was closed by the server
На каждом клиентском сервере у нас работает два компонента программного обеспечения: Продукт X и Продукт Y. У нас работает две центральные службы, к которым они подключаются - X подключается к службам A и B, Y подключается к Aтолько.
На каждом сервере, за исключением одного, все подключается и работает как положено.
В последние выходные у одного из наших клиентов возникла проблема, и продукт X не смогподключиться к службе B, а Y не может подключиться к A. X все еще может подключиться к A. и получать оттуда данные.
Я создал различные тестовые приложения для запуска на сервере, который будет подключаться к службам,известные данные и получить известные данные обратно.Соединение со службой B не удается, но оно может соединиться со службой A, несмотря на то, что является почти точной копией кода из продукта Y (основной код тот же, код для доступа к базе данных для получения настроек был заменен жестко закодированным тестомзначения)
На наших серверах, на которых размещены две службы, ничего не изменилось.Нам сказали, что на клиентском сервере ничего не изменилось.В другом месте сети было сделано изменение брандмауэра, чтобы заблокировать HTTP для одного сервера.Наши службы работают по протоколу HTTPS, и я бы предположил, что правило брандмауэра повлияет на весь доступ к веб-службам, а не на непротиворечивое смешанное поведение, которое у меня сейчас.
Программное обеспечение на клиенте предназначено для .NET 4.5,оба сервиса .NET 4.0
Мы запустили тесты на других клиентах, и они ничего не испытывают.
Что я пробовал до сих пор: Тестирование на других серверах (все в порядке) Тестированиеподключение от затронутого сервера (надежно провести один тестовый тест и один тестовый сбой) Google / StackOverflow (много сообщений из давних времен о .NET 1.1)