Bashスクリプト(cronとして呼び出される)のcurlコマンドは、データベースに対して操作を実行するために他のデバイス/サーバー(ホスティングAPIおよびSQLデータベース)からWebサービス/ APIを要求します。この操作にかかる時間は、実行される行数によって異なります。
APIは結果を私に返すことが重要であるため、そうするようにプログラムされています。
より大きな行のサブセット(例:数万ではなく数十万)に対して操作を実行すると、完了するまでに数分かかり、フィードバックはなく、エラーのみが発生することがわかりました。
"502 - Webサーバーがゲートウェイまたはプロキシサーバーとして機能している間に誤った応答を受けました。"
「Webサーバーがアップストリームコンテンツサーバーに接続したときに、コンテンツサーバーから誤った応答を受けました。」
カールが提供したオプションを確認し、接続の維持がデフォルト設定です。それでも指定しましたが、幸運ではありませんでした。
curl -s --keep-alive-time 5 –X GET “https://api.url.com/api/call” –H “accept: application/octet-stream” –H “Authorization: Bearer $password”
これは、keep-alive、--connect-timeout、および-mに加えて、私が呼び出す唯一のコマンドだからです。このスレッドによると適用されないようで、アイデアがすぐに不足しています。
誰もが正しい方向に私を指すことができますか?
編集:提案されているようにログを確認すると、ARRタイムアウトを増やす必要があることがわかります([Windowsドキュメント] [2])。他のスレッドでは簡単な手順について説明します。
ただし、IIS 1607(Windows Server 2016)にはアプリケーション要求ルーティング(ARR)は表示されません。。