1
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 3 years have passed since last update.

Azure App Service - Web Apps 一定間隔で謎のリクエストが発生する

Posted at

ローンチ前のクローズドな環境にもかかわらず、出所不明のリクエストにより多数のセッションファイルが生成されていた
また、当該ファイルのタイムスタンプは 2~3分間隔で規則性があった

調査

サーバー変数よりリクエストのログを取得

REQUEST_URI     = /
REQUEST_METHOD  = GET
SERVER_PROTOCOL = HTTP/1.1
REMOTE_ADDR     = ::1
REMOTE_PORT     = 21353
REMOTE_HOST     = ::1
HTTP_REFERER    =
HTTP_USER_AGENT = AlwaysOn
HTTP_CONNECTION = Keep-Alive

リクエスト元が自身
ユーザーエージェントも独特で怪しい

結論

一定間隔でのリクエストの正体は、常時接続(Always On)の設定によるもの

Web Apps の仕様として 20分間リクエストが無いとアイドル状態となり、次回アクセス時のレスポンスが低下する
また、Web ジョブを設定している場合、実行の確実性に不安が残る

それらを回避する為に利用される設定である

関連する公式ドキュメント

トラフィックがない場合も、アプリを読み込まれたままにします。 継続的な Web ジョブや、CRON 式を使用してトリガーされる Web ジョブに対して有効にする必要があります。

Web アプリは、20 分間アクティビティがないとタイムアウトする可能性があります。

挙動について

Always On が行う唯一のことは、アプリのルートに数分ごとに ping リクエストを送信することです。
同じ間隔で同じようなリクエストを自分で送信することとそれほど変わりません。

なお、ユーザーエージェントの値 AlwaysOn でリクエストの種類を判断可能
https://social.msdn.microsoft.com/Forums/office/en-US/77398e8a-2045-4309-b910-24d601642f11/azure-websites-always-on

サンキューデビッド

参考

https://blog.shibayan.jp/entry/20200113/1578920798#Always-on-%E3%82%92%E6%9C%89%E5%8A%B9%E5%8C%96%E3%81%99%E3%82%8B
https://poke-dev.hatenablog.com/entry/2019/03/17/232201

1
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
1
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?