4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Azure App Service が30秒でタイムアウトしてしまう

Posted at

はじめに

はじめてのAzure App Serviceで手探り状態で色々試している中で、
Azureの公式ドキュメントだけでは解決しなかった情報を残しておきます。

Azure App Serviceのリクエストタイムアウト設定が30秒なのか?

リクエストタイムアウト設定は230秒になっているようです。
image.png
Azure での Web アプリのアプリケーションパフォーマンスに関するよくあるご質問 - 230 秒後に要求がタイムアウトになるのはなぜですか?

30秒でタイムアウトするのはなぜ?

デフォルト設定のままデプロイすると30秒経過で502エラーが返ってきます。
最終的にこれが気付くポイントでした。

下記の設定で動いているとばっかり思っていて、600秒の設定かと思ってたら違いました。
こう書いてあったからここは疑わずに時間を取られてしまった。。。
image.png
Azure App Service 向けの Linux Python アプリを構成する - Flask アプリ

もしやと思いgunicornのドキュメントを見ると、
gunicornのworkerのタイムアウト設定はデフォルト30秒です。
image.png
gunicorn - Settings - timeout

え?もしかしてデフォルト設定なのでは?

解決

下記に従い、timeout設定を50秒にしてみたところ
image.png
Azure App Service 向けの Linux Python アプリを構成する - スタートアップ コマンドのカスタマイズ

time.sleep(40)を仕込んでみたけど、30秒で502エラーが返らなくなった!

最後に

英語サイトとかも調べまくったけど、
公式を鵜呑みにしてはいけないという教訓を得ました。
最終的には状況証拠をもとにいろいろ試すことが大事ですね。
実体とドキュメントが合致していないことは間々あります。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?