ちょっとネガティブな投稿です。
多少がっかりしたので経緯もざっくり説明しつつ感想を述べます。
どういうことですのん?
ここ最近、.net界隈の案件に携わることが多く、また直近では幸か不幸か長年の技術的空白を埋めるべくチャンスがあったので、ASP.net MVCでウェブアプリケーションをコツコツやっていました。
なかなか真新しいこともあり、使い勝手もよくなり、ああ、10年昔(2006年~)とは違うなあ~って感じていました。
しかし!
iisサーバ上に設置してからのアクセスが…
めっちゃ遅いやん!!!
はあ?10年前と変わらんやん。初回アクセス、ヘタしたら数分かかるやん!?
当時は.netFramework2.0になりたてだし、初心者やし、まぁ、しゃあないなあ…だったけどね。
対応を試みる
いやいや、プリコンパイルですよ。当時もそれで大分改善された記憶があるよ!
プロジェクト右クリック[公開]→webを発行→設定[ファイル発行オプション]
→「発行中にプリコンパイルする」にチェック
さてと…これでOKかしらね。ビルドしたファイルを設置します。
・・・・・・
あかんやん!?
と、いうことで、「Application Initialization Module」というのをサーバに追加インストールする。初期化モジュールということかな。これで起動が多少改善されるらしい。
[役割と機能の追加ウィザード]→アプリケーション開発機能
→図のApplication Initializationをチェック、インストールする。
IISマネージャからオートスタートの有効化を行う。
該当するアプリケーションプール→詳細設定→[開始モード]を「Alweys Running」に
[サイト]→選択した、ウェブサイトの詳細設定→[有効化されたプリロード]を「True」に
さあ、どうですか!?ん?
・・・・・・
あかんやんパート2!!
だが、ま、でも、え、、、何か間違ってるのかな…?
若干、わずかだけど改善されているようなないような…
何とかしてくれませんか
今のサーバ環境や接続状況やほかの外部的要因、その他もろもろな事情で改善されていないかもしれない。私の環境だけかもしれない。
IISやASPの設定でもっと根本的なアレが必要なのかもしれない。
しかし初回アクセス以降はサクサクいくので特に問題とは思えない。
ようするにこの状況、ググればなんぼでも出てくる。
「すいません~最初だけ遅いんですよぉ~」、って言わなあかんのかい。。。
これ、享受できますか?
できませんよ!
そもそもが間違ってるやん?
IISというかASP.netというかそっち側でなんとかしてくれよ、って話。
なんでわざわざ設定しないとアカンねん。デフォでしとけや。
よほど要件的にそぐわない限り、LAMPとかJavaとかの提案になるんやろうなあ。いまのところトホホ。
言語はc#が一番好きなんやけどね…(少しフォロー)