0

私たちが制御する他のさまざまなシステムからの情報を消費するソフトウェアがいくつかあります。

ソフトウェアを実行しているサーバーの 1 つが、2 つのサービス セットとの通信を突然停止し、エラーが発生しました。

The underlying connection was closed: A connection that was expected to be kept alive was closed by the server

各クライアント サーバーでは、製品 X と製品 Y の 2 つのソフトウェアが実行されています。これらが接続する 2 つの中央サービスが実行されています。X はサービス A と B に接続し、Y は A のみに接続します。

私たちが持っているすべてのサーバーで、1 つを除いて、すべてが接続され、期待どおりに実行されます。

先週末、クライアントの 1 人が問題を抱えており、製品 X はサービス B に接続できず、Y は A に接続できません。X は引き続き A に接続し、そこからデータを取得できます。

サービスに接続し、既知のデータを配置し、既知のデータを取得するサーバー上で実行するさまざまなテスト アプリケーションを作成しました。サービス B への接続は失敗しますが、製品 Y からのコードのほぼ正確なコピーにもかかわらず、サービス A に接続できます (メイン コードは同じです。設定を取得するためにデータベースにアクセスするコードは、ハードコーディングされたテストに置き換えられています値)

2 つのサービスをホストしているサーバーに変更はありません。クライアント サーバーでは何も変更されていないことがわかりました。1 つのサーバーへの HTTP をブロックするために、ネットワーク上の他の場所でファイアウォールの変更が行われました。私たちのサービスは HTTPS を使用しており、ファイアウォール ルールがすべての Web サービス アクセスに影響を与えると思いますが、現在の一貫した混合動作ではありません。

クライアントのソフトウェアは .NET 4.5 をターゲットにしており、サービスは両方とも .NET 4.0 です。

他のクライアントでテストを実行しましたが、何も経験していません。

これまでに試したこと: 他のサーバーでテストする (問題ない) 影響を受けるサーバーからの接続をテストする (確実に 1 つのテストに合格し、1 つのテストに失敗する) Google/StackOverflow (.NET 1.1 に関する昔からの多くの投稿)

4

0 に答える 0