偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

ASP.NET站點 應(yīng)該從哪些方面優(yōu)化

開發(fā) 后端
本文主要介紹的是,我們在用ASP.NET開發(fā)網(wǎng)站時,應(yīng)該從哪些方面考慮優(yōu)化問題。從前臺到后臺都會有一個很好的介紹。希望對大家有幫助,一起來看。

在用ASP.NET開發(fā)網(wǎng)站的時候,性能是永遠(yuǎn)需要考慮和關(guān)注的問題,性能不僅僅只是程序代碼執(zhí)行時候的速度,而是涉及到方方面面的東西。

就拿ASP.NET的一個請求來講,從瀏覽器向服務(wù)器的ASP.NET網(wǎng)站發(fā)送請求開始一直到***整個頁面呈現(xiàn)在我們面前,其中請求經(jīng)過的每一個步驟,都是有不同的調(diào)優(yōu)方式的,而且調(diào)用的方法也很多,不僅僅只是常見的:緩存,多線程,異步等。

文章決定從兩個大的方面來講述調(diào)優(yōu):

前臺調(diào)優(yōu):主要包含如何盡量的減少http請求,從http請求開始,到如何加載js, css,如何壓縮傳輸?shù)臄?shù)據(jù)等。

后臺調(diào)優(yōu):分析ASP.NET請求的處理過程,并在每一步給出相應(yīng)的調(diào)優(yōu)方法,而且在代碼組織,架構(gòu)和數(shù)據(jù)庫的操作上面給出調(diào)優(yōu)的方法。

記得在剛剛開發(fā)網(wǎng)站的時候,一提到提高性能,最容易也是最快想到的就是緩存,而且在微軟官方的Best Practice的一些文檔中也是建議:層層緩存(在數(shù)據(jù)存儲層,DAL,BLL,UI等都要緩存)。然后在網(wǎng)站中就”緩存遍地開花”,***的確實不盡人意。

另外的一個常見的優(yōu)化針對數(shù)據(jù)庫的:如盡量減少子查詢,使用join聯(lián)接;在常常需要查詢的字段上面建立索引。確實,這些是很通用,也不錯的一些規(guī)則。

而且還有一個體會就是,在優(yōu)化性能的時候,如果選擇優(yōu)化代碼和數(shù)據(jù)庫,往往優(yōu)化數(shù)據(jù)庫的一些操作帶來的效果會更加的好,很可惜的是:在項目中(至少在我開發(fā)的一些項目中),數(shù)據(jù)庫僅僅就只是一個數(shù)據(jù)的存儲設(shè)備而已,僅此而已,沒有發(fā)揮出數(shù)據(jù)庫的強大作用。所以還是建議對數(shù)據(jù)庫的內(nèi)部查詢和存儲的機(jī)制要熟悉,畢竟很多時候開發(fā)人員也擔(dān)任了DBA的工作(很多公司沒有正式的DBA)。

而且在項目中我們設(shè)計數(shù)據(jù)庫的時候,特別是表字段的時候,是需要有些考慮的,很多人建議表字段的長度不要太長,這也是大家常見的建議,但是為什么?

其實,這就需要懂得一些數(shù)據(jù)庫的內(nèi)部存儲機(jī)制了:在數(shù)據(jù)庫(SQL SERVER )保存的時候,數(shù)據(jù)是以”頁”為最小的單位的,每一頁有8K的大小,如果你的一個表中的數(shù)據(jù)超過8K,那么這個表的數(shù)據(jù)就要分幾個頁面保存,這樣在對數(shù)據(jù)進(jìn)行查詢的時候,就要跨頁查詢了,跨頁是需要性能消耗的,如果數(shù)據(jù)都在一個頁面上,那么速度肯定快些。

所以,要優(yōu)化網(wǎng)站,就得知道性能消耗在哪里。

當(dāng)優(yōu)化的一個網(wǎng)站的時候,不是盲目的一概而論的,一般來說有兩種情況:

1、網(wǎng)站已經(jīng)存在了,并且運行了,現(xiàn)在要優(yōu)化。

2、正在從頭開發(fā)一個新的網(wǎng)站。

如果是***種情況,那么首先要找出網(wǎng)站性能的瓶頸,從前臺的請求的到后臺的請求處理,一直到***頁面的呈現(xiàn),都要一步步的審查。

如果是第二種情況,可能情況就稍微好一點,并且網(wǎng)站現(xiàn)在完全由我們控制,所有在開發(fā)和設(shè)計的過程中就可以采用很多的優(yōu)化原則來優(yōu)化。

優(yōu)化不一定就是代碼重寫或者做些很大的改動,優(yōu)化時一點點的累積的,就好比代碼的重構(gòu)一樣,都是一個積累的效果。比如,是在頁面一開始的時候載入js腳本,還是在整個頁面的***載入js腳本,有時候往往就只是簡單的調(diào)整一下載入的文件,或者異步的載入腳本,或者通過CDN傳輸腳本等等方法,性能就提升了。

性能的提升也不是沒有代價的,有的代價很小,例如只是把腳本的載入放在頁面***,大的代價就是,例如買些服務(wù)器設(shè)備,如Content Delivery Network(CDN)來把靜態(tài)的文件(js,css,image)傳送到客戶端。所以說,優(yōu)化需要權(quán)衡策略。

不知道大家是否有過這樣的體會:當(dāng)看著自己開發(fā)出來的系統(tǒng)性能很好的時候,自己是很自信的,相反,如果系統(tǒng)很慢,有時真不想說這個系統(tǒng)是自己做的。

【編輯推薦】

  1. ASP.Net中保護(hù)自定義的服務(wù)器控件
  2. ASP.net的身份驗證方式FORMS
  3. 使用ASP.NET操作IIS7中使用應(yīng)用程序
  4. 大型高性能ASP.NET系統(tǒng)架構(gòu)設(shè)計
  5. ASP.NET配置文件Web.config詳細(xì)解釋
責(zé)任編輯:于鐵 來源: 博客園
相關(guān)推薦

2011-06-15 13:17:36

ASP.NET

2024-06-26 08:32:13

2011-04-13 13:49:50

ASP.NET網(wǎng)站優(yōu)化

2011-02-22 09:16:24

高性能ASP.NET

2011-02-13 09:37:55

ASP.NET

2011-02-17 09:13:57

ASP.NET

2009-07-21 14:16:02

ASP.NET管道優(yōu)化

2009-08-04 17:16:16

ASP.NET代碼優(yōu)化

2009-07-31 17:35:02

ASP.NET線程安全

2011-02-13 09:17:02

ASP.NET

2009-07-24 17:08:31

添加站點地圖asp.net

2021-06-30 17:21:23

CPUMySQL性能

2009-08-07 13:56:46

ASP.NET控件開發(fā)

2024-06-11 09:00:00

異步編程代碼

2009-07-21 14:37:13

Profile Pro優(yōu)化ASP.NET 2

2025-05-06 06:37:40

2009-08-03 14:22:33

什么是ASP.NET

2009-07-28 17:17:19

ASP.NET概述

2009-07-22 17:45:35

ASP.NET教程

2009-07-23 14:39:23

ASP.NET處理
點贊
收藏

51CTO技術(shù)棧公眾號