OutputCacheによるページダウンロードの解決策

2057 ワード

Asp.NetのOutputCacheはとても役に立ちますが、加えてブラウザがページをダウンロードしているのをよく見かけて、理解しにくいです.最後に、searchで半日後、発見された解決策はすべてVaryByHeader=「Content-Type」というものを加えたものです.しかし、それを加えると、機能しないことに気づき、ダウンロードされます.
 
最後にdududuに教えてもらった後、Globalを書き換える完璧な解決策を与えた.asaxでのApplication_BeginRequestメソッドは、ページタイプを判断し、「text/vnd.wap.wml」であればページをキャッシュせず、高アクセスのテストを経て、このメソッドは信頼性が高く実行可能で、性能の問題がなく、安心して大胆に使用することができます.
 
コード:
 
 

   
   
   
   
protected void Application_BeginRequest(Object sender, EventArgs e)

{

// use outputcache

string acceptTypes = Request.Headers[ " Accept " ];

if ( ! string .IsNullOrEmpty(acceptTypes) && acceptTypes.ToLower().Contains( " text/vnd.wap.wml " ))

{

Response.Cache.SetCacheability(HttpCacheability.NoCache);

}

}

 
使用した後、サーバーのCPUの占有率は、すぐに下がって、以下の備考の下でOutPutCacheの利点を使用します:直接メモリからページを読んで、ページの応答速度はもっと速くて、ユーザーの体験はもっと良いです;サーバの圧力を大幅に低減し、特に高同時Webサイト、特にCPUの圧力を低減します.DBの強要を減らし、DB(データベース)の圧力を下げる.
 
以上がOutputCacheによるページダウンロードの解決策ですが、お役に立てば、メッセージを残したり、お勧めをクリックしたりしてください