Azure Web Apps

Azure Web Apps + ASP.NET MVC のアプリログ出力

Azure Web Apps + ASP.NET MVC でアプリケーションログを出力する場合、log4net などのログライブラリを使用するのも可能ではあるが、Azure のビルトインとして用意されている App Service ログを使用した方が、ちゃんとログ出力されるかなど余計な心配をし…

Azure Web Apps + ASP.NET での初回ページ表示遅延対策

Azure Web Apps + ASP.NET の組み合わせでシステムを構築した場合、ページの初回表示が非常に遅い現象に見舞われる事がある。 どれぐらい遅いかと言うと、大体 10 ~ 30 秒ぐらい待つ感じ。 主な原因は下記 2 つ。 Azure Web Apps の「常時接続」設定がオフ…

VS から Azure へ発行時、Could not find file エラーが発生する

Visual Studio から Azure 上の Functions リソースにプロジェクトを Web Deploy 発行する際、以下のようなエラーが発生することがある。 [出力] ウィンドウ 3>(2019/07/15 22:30:16) リモート コンピューターでの要求の処理中にエラーが発生しました。 3>Co…

Azure Web Apps の環境変数例

Azure Web Apps では、自分で追加して使えるアプリ設定と同様、環境変数も動作環境の情報として取得して使うことが出来る。 参考のために、環境変数を全部出力した場合の例を記載する。 確認環境 確認に使用したアプリ: ASP.NET MVC (.NET Framework) アプリ…

Azure App Service のメモリ使用率について

App Service プランの Basic 以上は使用可能メモリの上限が決まっている。 同じ App Service プラン上に複数の Web Apps などを載せて使用することが出来るが、これはつまり、同じインスタンスのメモリを食い合っていることに他ならない。 例えば 5 個の Web…

稼働中 Azure Web Apps に影響を与える操作について (再起動とか)

Azure ポータルでは Web Apps に関して色々と操作出来るが、その際の稼働中 Web Apps の挙動について説明。 なお、Functions の挙動は異なるので注意 (https://poke-dev.hatenablog.com/entry/2019/11/24/160018)。 ここでは ASP.NET MVC のプロジェクト作成…

ASP.NET MVC アプリの脆弱性対策について

対象 ASP.NET MVC 5 (.NET Framework) + Azure Web Apps を対象とする。 不要なレスポンスヘッダーの削除 既定のままだと、レスポンスヘッダーには以下のような ASP.NET を示唆する情報が出力される。 Server: Microsoft-IIS/10.0 X-AspNet-Version: 4.0.303…

ASP.NET セッション格納先 Azure Redis Cache の設定を動的に変更する

ASP.NET のセッション情報の格納先は、オンプレでは StateServer モードを使うことが多いと思う (InProc は使わない前提)。 オンプレではステートサービスを利用する方法で良いが、Azure Web Apps 上で動作させる場合、ステートサービスが利用できない。 代…

Entity Framework 使用時の注意点とか

EF 側 EF を利用するプロジェクトと同じプロジェクトに EF を含めることも可能だが、xxx.DAL みたいな名前の専用プロジェクトを新規に作成して、そちらで管理した方が良いかも(お好きな方で) EF ライブラリは Nuget からインストールできる (Entity Framew…

Azure リソースの本番、開発用の使い分けについて

一般的なプロジェクトの開発からリリースまでの流れとして、 ローカルや Azure 上の Dev 環境で開発 Azure 上のステージング環境でテスト Azure 上の本番環境にリリース となる事が多いと思うが(他知らないので、その前提で進めます)、このステップを踏む…

Azure App Service のレイヤー構成について

レイヤー構成図 赤枠は同一 App Service で 2 インスタンス使用している時の例 各レイヤーに関連する項目 スロット Azure ストレージ上の永続ストレージ (= デプロイしたアプリ) (d:\home) (スワップ対象) (*2) アプリ設定 (スワップ対象。スロット固定可) I…

Azure Functions で使用されるファイルのストレージについて

Functions にフォーカスしているが、基盤としている App Service も基本的な考え方は同じ。 App Service では用途によって、ファイルストレージが 2 種類用意されている。永続ファイル用と、一時ファイル用。 App Service は同一アプリ用のインスタンスが複…

Azure Functions (App Service) が使用する通信用 IP について

Azure Functions、と言うよりはその基盤となる App Service の仕組みになるが、通信に使用する IP が、1 つだけ使用するとかの単純な構成ではない。 まず、受信と送信で、別の口が用意されている。受信は 1 つで、送信は 4 つから 5 つの複数個用意されてい…