web-dev-qa-db-ja.com

POSTがタイムアウトになる

ARRを介して大きなファイルをPOSTすると、リクエストは120秒後にタイムアウトになります。クライアントはエラーコード502 Bad Gatewayを受け取ります。 Webファームの「プロキシタイムアウト」を600秒に設定しました。また、Connection time-outDefault Web Siteを600秒に設定しました。 ARRサーバーが再起動されました。

以下は、ARRサーバーのログファイルからの抜粋です。

2015-05-07 13:25:16 192.168.87.155 POST /Redacted/Import/RedactedImport20150507_152313.csv X-ARR-CACHE-HIT=0&X-ARR-LOG-ID=253daa4a-8372-405a-8efd-21ebbc38353f 80 - 192.168.87.198 - redacted.local 502 3 64 120436

applicationHost.configから:

    <webFarm name="redacted.local" enabled="true">
        <server address="redacted.local" enabled="true" />
        <applicationRequestRouting>
            <healthCheck url="http://redacted.local/redacted.svc" liveTrafficFailureCodes="400-" />
            <protocol timeout="00:10:00" />
        </applicationRequestRouting>
    </webFarm>

バックグラウンド:

ARRを使用して、ほとんどの場合WCF(Basic HTTP)とRESTであるバックエンドサービスの負荷分散と高可用性を実現するためのPoCを構築しています。

(REST)サービスの1つは、バッチジョブから1日に数回大きな(ish)ファイルを受信するために使用されます。 RESTサービスは、ファイルの処理が完了するまで(5分かかる可能性があります)戻りません。クライアントアプリケーションは処理が完了したことを知る必要があるためです(以下の手順が続きます。最初に依存)。

3
Thomas M. H.

私がついにそれを理解したので、私自身の質問に答えます。

これをapplicationHost.configの下のconfiguration/system.applicationHostに追加しました:

<webLimits connectionTimeout="00:10:00" minBytesPerSecond="0" />

しかし、保存してIIS ManagerのManage Serverの下にあるRestartを押した後でも、2分後も502で応答しました。

ただし、今日、いくつかのIIS機能(失敗したリクエストトレース)をインストールしたときに、IISサービスW3SVCとWeb管理サービスWMSvc、そして突然502が停止しました。

0
Thomas M. H.

私の場合、プロキシのタイムアウトを変更することで問題を解決しました

  1. IISマネージャーに移動
  2. アプリケーションがルーティングを要求する
  3. 「アクション」の下でサーバーのプロキシ設定に移動します
  4. タイムアウトを希望の値に変更します。

これらの手順はIIS v7

1
Claudio Reyes

ネットワークカードのデフォルトのMTU設定に関連する同様の問題があり、1500ではなく1514に設定されていたため、大きな投稿でのみ問題が発生していました。

https://blogs.technet.Microsoft.com/askpfeplat/2014/12/01/psa-incorrect-mtu-size-causes-connectivity-issues-with-windows-server-2012-and-windows-サーバー-2012-r2 /

0
Gary W