ASP.NET中怎樣才能使本身的代碼運行的效率更高

1、網頁設計相關:數據庫

1,作好頁面佈局和內容規劃,只放置合適的內容,並儘量使頁面設計的最小。編程

2,使用好的網頁編輯器,如DW,FP,不要用VS自帶的編輯器,由於它會產生不少無用的沉餘代碼,並且設計的界面也不是很好看。瀏覽器

3,小圖片採用GIF格式,下載速度最快,大一點的採用jpg,佔用磁盤空間小。緩存

4,儘量使用CSS,這既是原則也是方法,可使整個網站瀏覽速度提升3%以上,有的甚至可以提升30% 。安全

5,儘可能不要使用框架,在須要的地方也要有替代措施。服務器

6,不要只針對IE寫客戶端腳本。網絡

7,客戶端的事情儘可能在客戶端處理。如今客戶端設備已經很強了,許多原來在服務器端才能作的事情如今都能在客戶端作,而服務器端反而成了訪問的瓶頸。併發

8,少用Flash。Flash通常都會佔較大的網絡帶寬,在須要的時候也要注意不要作得太大用的太多。框架

9, 避免使用彈出式對話框,由於如今好多瀏覽器都被裝上了「彈出窗口攔截」插件。說服用戶解決這個問題有時是很惱火的,由於他們不是都能熟練的使用計算機。編輯器

2、.NET設計相關 

1,能用Label的地方不用TextBox,由於Label比起TextBox來講是輕量級的控件。

2,儘可能使用Repeater 控件綁定列表數據,有兩個緣由,一是能夠保留美工原始的界面設計效果,二是比起DataGrid控件,性能能夠提高70%(有專門的測試案例)。

3,若是頁面僅僅是瀏覽不用回送服務器端繼續處理,那麼不要使用頁面視圖ViewState。若是一個界面上有不少控件那麼視圖將會佔去一半的頁面大小。其餘狀況也要儘可能少用頁面視圖。

4,採用緩存技術。從緩存位置能夠分爲客戶端緩存、代理緩存、服務器端緩存;從具體頁面來講能夠分爲整頁緩存、局部緩存、數據緩存。緩存技術能夠極大地提升Web服務器的處理能力,是最經濟有效的提升訪問速度的措施。

5,靜態頁面生成技術。若是採用緩存不能起到很好的做用那麼能夠將常常訪問的頁面生成靜態頁面。像三大門戶網站都採用了這個技術,不少CMS也都採用了該技術。

6,服務器處理數據,客戶端負責展示。把客戶端的事件放到服務器端去處理在互聯網上不是好注意,不能想象這是一個企業內部的Web應用程序。

7, 少用Session。若是要在頁面之間傳遞參數,能夠採用URL方式或者頁面視圖方式,若是是跨頁面的數據傳遞,那麼也最好使用Cookie 。Web訪 問的特色決定了這個多用戶併發訪問環境,Session會佔用不少服務器資源,若是訪問量很大這個資源佔用是很高的。

8,合理使用Application 。不一樣於緩存對象,它可以提供更好的全局數據訪問,適合於須要長時間緩存頻繁的公共數據。

9,注意Cookie 問題,有的瀏覽器可能不支持使用Cookie 訪問你的站點,在使用Cookie 以前必定要檢測客戶端是否支持並採用相應的策略。

10, 只訪問須要的數據,如今Ajax技術能夠很好的處理這類問題,它讓頁面處理速度更快表現力更豐富。


3、數據訪問相關 

1,優化數據庫結構設計。這是數據訪問效率和編程複雜程度的關鍵。沒有良好的數據庫結構設計其它都談不上。包括字段類型的選擇,表的結構,索引的使用,表的關係等。

2,優化數據庫物理設計。這裏關注的是數據庫容量,日誌,磁盤使用,數據備份機制,數據訪問機制,安全等數據庫物理結構相關的問題。

3,合理設計「主鍵」:在不一樣的場合須要採用不一樣的主鍵設計策略,在互聯網大容量併發訪問的環境中,建議主鍵採用整形自增字段。主鍵使用還應該遵循「無心義」原則。

4,採用最佳的數據訪問接口,如專門針對SQL Server的數據訪問對象。

5,「只要須要的數據」:若是一行有大容量字段,那麼讀取一整行效率是很是低的(數據瓶頸)。

6,最遲打開,最先關閉的原則。使用數據庫後必定要及時關閉鏈接,它們是系統昂貴的資源。

7,採用「數據緩存」技術,將常用數據集緩存在磁盤或者內存中,儘可能減小對數據庫的直接訪問。

8, 使用存儲過程。可能在通常的應用系統中存儲過程能夠被簡單的查詢替代,於是更「通用」,可是咱們如今討論的是大型企業信息門戶網站的問題。做爲一個互聯網 應用系統,處理速度和網絡帶寬無疑是最重要的。系統的瓶頸每每是磁盤IO和網絡IO,合理使用存儲過程使得分佈式系統結構效率大大提高。但也要注意合理使 用,好比避免通常的分頁過程,因爲查詢會有不少,使得這樣的存儲過程太多而管理混亂。

9,慎用遊標。數據庫的遊標執行效率通常都比較低,通常均可以使用複雜的查詢語句代替,合理的數據庫結構設計也能夠避免這個問題。

10,合理使用觸發器。大部分人以爲觸發器使得數據關係不明確,即屏蔽了數據的關係,可是當一個系統很是複雜的時候,數據關係更是複雜,這時候使用觸發器來維護數據的一致性和數據同步的功能,能夠有效地屏蔽數據關係的複雜性,減小程序代碼。

11,合理使用事務:若是不是須要連續處理的或者須要特別安全的數據處理,不要使用事務,由於事務的使用會影響數據庫的併發性能。單純的查詢過程也使用事務更不可取。

12,安全的數據訪問:目前十分常見SQL注入式攻擊,須要注意數據庫系統安全設置和Web程序編碼問題引發的安全漏洞。

相關文章
相關標籤/搜索