高性能ASP.NETサイト構築のシンプルな最適化


配置の最適化
さまざまな導入方法がサイトのパフォーマンスに影響を及ぼすことはよく知られていますが、一部の友人はすでにこのことを知っているかもしれません.いずれにしても、ここでは詳細なシステムでこの問題を説明し、よく知っている友人はJを振り返る権利があります.
Release方式でプロジェクトをコンパイルする
私たちのプロジェクトがProject方式で構築されている場合、つまり、私たちのサイトがSolutionソリューションに含まれている場合、リリース前にプロジェクトをコンパイルするときにrelease方式を採用すると、CPUの使用率が減少します.デバッグ方式でパブリッシュされるため、コンパイラはコンパイルされたコードにデバッグ情報など多くの情報を追加します.
操作手順:
1.VSで「Build|Configuration Manager」を選択します.次のようになります.
2.「Active Solution Configuration」ドロップダウンボックスで「Release」、そして「Close」.ではSolutionはRelease方式でコンパイルされます.(実際にはSolutionをReleaseにコンパイルする方法が多く、例えばSolutionの上で「属性」を右クリックして設定してもよい)
今はSolutionがRelease方式ですが、このSolutionの下のASPを見てみましょう.NETサイトプログラムのconfigファイルは、まだdeubg方式であることがわかります.では、サイトを公開するときは、releaseに手動で変更する必要があります.
注意:Solutionがwebでもdebugでコンパイルされている場合.configはreleaseを設定し、最後に公開されたサイトのコードは方式です.
サイトの公開
パブリッシュの手順は次のとおりです.
1.webを修正する.configの構成は次のとおりです.
2.サイト上で右クリックで「Publish」を選択する.次のようになります.
不要な返信を減らす
サービス側からクライアントへの返信には、毎回一定の時間がかかり、ユーザーが待つ時間が長くなることが知られています.だから、一部の返事は免除され、免除されます. 
Server.Transfer Vs Response.Redirect
サービス側でユーザーを別のページに指向する必要がある場合は、サーバをできるだけ使用することを考えてみましょう.ResponseではなくTransfer.Redirect.
Responseを使うとRedirectの場合、サービス側はクライアントのブラウザに応答を送信します.ブラウザに転向したページをロードするように伝えます.その後、ブラウザは再びサービス側に要求を送信し、別のページを要求します.
サーバを使用するとTransferの場合、サービス側はすぐにジャンプを実行します.このような悪い点は、この時点で要求されたのはA.aspxであり、実際にはサービス側はB.aspxページにジャンプしているが、ブラウザ上のUrlはA.aspxを表示している可能性がある.
サーバーを使用するときTransferは、AページにアクセスするたびにBページにジャンプする必要があると判断した場合、サーバを使用することに注意してください.Transfer.例えば、ブログパークを例にとると、ユーザーがログインしていないときに読んでいる文章にコメントしたい場合、ページはLoginのログインページにジャンプし、ログインした後、ページは前に文章を読んでいたページにジャンプし、コメントを書く.このときのこのジャンプはサーバには向いていません.TransferはResponseを採用する.Redirect.ユーザがどこにいても、ユーザがログインする限り、常に一定のページにジャンプすると、サーバを使用することができる.Transfer.
そしてサーバーです.Transferは結局サービス側のリソースを消費するので、使うときは注意してください.
以上から、チューニングはもともと折衷の過程であり、絶対的ではないことがわかります.チューニングは最後に「時空変換-時間が空間を変え、空間が時間を変える」ということです.  
サイトのデフォルトページを宣言
サイトをリクエストするとhttp://domain/folderIISは自動的にいくつかのリダイレクトを行いますhttp://domain/folder/.また、http.Sysは、デフォルトページを宣言していないサイトのデフォルトのトップページをカーネルのキャッシュに追加することはありません(少し迂回しているかもしれません)、例えば、プログラムでサイトのデフォルトページを設定する場合Default.aspxですが、IISに配備する際、Defaultは構成されていません.aspxはサイトのデフォルトページであり、このページの内容はhttpされません.Sysはカーネルにキャッシュされます.従ってIISのリダイレクトを回避するためにhttpを許可する.SysキャッシュページIISでサイトのデフォルトページを構成する(またはブラウザで入力するたびにhttp://domain/folder/default.aspxしかし、ユーザーの行動を制御することはできません.そのため、この方法はほとんど不可能です.
永久ジャンプ関連トピック
私たちのサイトのページが期限切れになったり、使用されなくなったりしたら、301永久ジャンプを採用することができます.サービス側がクライアントに301応答すると、ブラウザおよびエージェントはキャッシュを更新し(以前の古いページがキャッシュを採用していた場合)、検索エンジンも新しいページを採用する.
サービス側がクライアントに301応答を送信するには、以下のようにする.
1.コード:
ASP.NET 4.0以降のバージョン:
Response.RedirectPermanent("NewPage.aspx");
2.IIS構成
a)IIS 6構成
1.IISのサイトで、ジャンプしたいファイルまたはディレクトリを選択します.
2.「A redirection to a URL」を選択
3.ジャンプしたいページを入力します.
4.次に「The exact url entered above」と「A permanent redirect for this resource」を選択します.
b)   IIS 7
Server 2008の上
1.「スタート」->「管理ツール」->「サーバー管理」を開く
2.IISに「ロールサービス」を追加
3.「一般的なHttp機能」で「Httpリダイレクト」を選択
4.インストールします.
Win 7の上には、次のようにあります.
そして、私たちのサイトのwebで.configの構成は次のとおりです.
   
   
   
   
  1. <configuration> 
  2.   <location path="OldPage.aspx"> 
  3.     <system.webServer> 
  4. <httpRedirect enabled="true" destination="NewPage.aspx" httpResponseStatus="Permanent" /> 
  5.     system.webServer> 
  6.   location> 
  7. configuration> 

今日はここまで、ありがとうございました!
テキストリンク:http://www.cnblogs.com/yanyangtian/archive/2011/02/15/1954804.html