如何真正提高ASP.NET網站的效能《轉載》

來源:互聯網
上載者:User

文章出處

前言

怎麼才能讓asp.net網站飛得更快,有更好的效能?——這是很多開發人員常常思考的一個問題。我有時候會做大量的測試,或請求別人幫忙採集一些資料,希望能夠驗證網上一些專家的建議或證明自己的一些猜想。

理論上講,我們希望能開發出效能最優的網站,但是公司能否承擔為此要付出的成本?這是實踐過程中常常遇到的矛盾。 如何合理運用已知技巧在實戰中是最有意義話題。

本文羅列出一些最佳化的經驗和方案,成文之前有幸看了一些高品質的文章。想強調一點,很多的部分不是我個人的勞動成果,但我完全的支援和同意這樣去做,不敢獨享,希望拋磚引玉,共同長進。

IIS設定

如果你的IIS伺服器不需要外出訪問互連網,關閉Certificate Revocation List (CRL)machine.config 中 generatePublisherEvidence認證撤銷清單的Authenticode的二進位檔案(CRL)檢查。

可以參考下面的文章:

http://msdn.microsoft.com/zh-cn/library/bb629393.aspx

開啟IIS Compression (HTTP 壓縮), 預設情況下IIS7.x 和 IIS6 都沒有開啟這項。 這可以協助你提高頻寬的使用效率。啟用壓縮提高 IIS 與啟用壓縮的瀏覽器之間的傳輸速度。 尤其對於行動裝置,採用壓縮可以提高效能。

僅限靜態檔案

僅限Live App程式響應

靜態檔案和Live App程式響應

IIS 提供下列壓縮選項:

注意: 壓縮Live App程式響應會影響 CPU 資源,因為 IIS 不緩衝動態輸出的壓縮版本。

因為動態壓縮會消耗大量的 CPU 時間和記憶體資源,所以應當僅在滿足下列條件的伺服器上使用它:網路連接速度很慢,但有多餘的 CPU 時間。

與動態響應不同,可以對壓縮的靜態響應進行緩衝,同時不會降低 CPU 資源的效能。

靜態檔案的最佳化

盡量合并檔案的靜態內容(如js檔案和css檔案)。 這有利於更快地下載此類檔案,理想的情況下,合并成一個單一的JS和CSS檔案。

先載入CSS然後載入Javascript

避免在HTML中對圖片使用Width height, 例如 <img width="400" height="280" src="myimage.jpg" />

代碼的最佳化

確保預設下關閉ViewState,真正需要它時才啟用。 關閉ViewState可以從根本上減少頁面的大小,並顯著提高頁面載入時間。

啟用ASP.NET輸出緩衝。 不幸的是,這有可能需要你花時間研究一個個ASPX頁面。

啟用Web service 的輸出緩衝。 你的Web service 在任何給定的輸入參數下總是返回相同結果, 你可以使用這種緩衝。

如果你使用了ASP.NET Ajax,確保在web.config 中設定了 <compilation debug="false"/>。 這避免了用戶端和伺服器端“昂貴的”參數驗證。

工具

使用YSlow來測量網頁載入時間。如果有必要我會介紹如何使用Yslow。在這裡先上幾個,讓大家有一定瞭解:

FireBug——這是另外一款利器,你可以很容易得到如何使用它的文章。

其他

如果應用程式需要從XML還原序列化任何資料(包括 web services),請預先使用 Sgen.exe (XML 序列化程式產生器工具)產生程式集。 不使用 XML 序列化程式產生器時,XmlSerializer 在應用程式每次運行時為每個類型產生序列化代碼和一個序列化程式集。

可以參考下面的文章瞭解更多關於SGEN :

http://msdn.microsoft.com/zh-cn/library/bk3w6240%28v=VS.100%29.aspx

參考:http://blogs.msdn.com

原文連結:http://www.cnblogs.com/multiplesoftware/archive/2011/02/08/1949809.html 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.