二十八條改善 ASP 效能和外觀的技巧

2021-04-02 07:31:29 字數 2062 閱讀 4930

技巧 15:批處理內嵌指令碼和 response.write 語句

技巧 16:如果頁面需要很長時間才能完成,那麼執行前使用 response.isclientconnected

技巧 17:使用 標記例示物件

技巧 18:對於 ado 和其它元件使用 typelib 繫結

技巧 19:利用瀏覽器的驗證功能

技巧 20:避免在迴圈語句中使用字串串聯

技巧 21:啟用瀏覽器和**快取

技巧 15:批處理內嵌指令碼和 response.write 語句

vbscript 語法 <% = expression %> 將「expression」的值寫到 asp 輸出流中。如果響應緩衝未啟用,那麼執行其中的每一條語句,都會以許多小的資料報通過網路將資料寫到瀏覽器中。這樣速度很慢。而且穿插執行少量的指令碼和 html,將引起指令碼引擎和 html 之間的切換,從而降低效能。因此,使用下面的技巧:使用 response.write 呼叫代替**緊密的內嵌表示式。例如,在下面的示例中,在每一行的每一字段對響應流有一次寫操作,每一行在 vbscript 和 html 之間有許多切換:

<% for each fld in rs.fields %>

<% = fld.name %>

<%

next

while not rs.eof

%>

<% for each fld in rs.fields %>

<% = fld.value %>

<% next

<% rs.movenext

wend %>

下面的**更有效,每一行對響應流有一次寫操作。所有的**都包含在乙個 vbscript 塊內:

<%

for each fld in rs.fields

response.write (?? & fld.name & ?? & vbcrlf)

next

while not rs.eof

response.write (??)

for each fld in rs.fields %>

response.write(?? & fld.value & ?? & vbcrlf)

next

response.write ??

wend

%>

技巧 22:盡可能使用 server.transfer 代替 response.redirect

技巧 23:在目錄 url 中使用後斜槓

技巧 24:避免使用伺服器變數

技巧 25:公升級到最新和最出色的

技巧 26:優化 web 伺服器

技巧 27:進行效能測試

技巧 28:閱讀資源鏈結

技巧 22:盡可能使用 server.transfer 代替 response.redirect

response.redirect 讓瀏覽器請求另乙個頁面。此函式常用來將使用者重定向到乙個登入或錯誤頁面。因為重定向強制請求新頁面,結果是瀏覽器必須到 web 伺服器往返兩次,且 web 伺服器必須多處理乙個請求。iis 5.0 引入了乙個新的函式 server.transfer,它將執行轉移到同一臺伺服器上的另乙個 asp 頁。這樣就避免多餘的瀏覽器-web-伺服器的往返,從而改善了總體系統效能以及縮短了使用者的響應時間。檢查「重定向」中的「新的方向」,上面應該是 server.transfer 和 server.execute。

另請參見 leveraging asp in iis 5.0,了解 iis 5.0 和 asp 3.0 新功能的完整列表。

技巧 23:在目錄 url 中使用後斜槓

乙個相關的技巧是確保在指向目錄的 url 中使用後斜槓 (/)。如果您省略了後斜槓,瀏覽器就會向伺服器發出請求,只是為了告訴伺服器,它在請求目錄。瀏覽器就會發出第二個請求,將斜槓附加到 url 後面,只有此後,伺服器才能以該目錄的預設文件或目錄列表(如果沒有預設文件且啟用了目錄瀏覽的話)響應。附加斜槓可省去第乙個、無用的住返。為便於使用者閱讀,可以省略顯示名稱中的後斜槓。

例如,寫:

二十八條改善ASP效能和外觀的技巧 三

變數 foo 被解析為全域性物件。變數 bar 被解析為 foo 的成員。這實際就是一次 com 方法呼叫。變數 blah 被解析為 foo.bar 的成員。這又是一次 com 方法呼叫。變數 qaz 被解析為 foo.bar.blah 的成員。沒有錯,這還是一次 com 方法呼叫。呼叫 foo.b...

二十八 模組

模組 在電腦程式的開發過程中,隨著程式 越寫越多,在乙個檔案裡 就會越來越長,越來越不容易維護。為了編寫可維護的 我們把很多函式分組,分別放到不同的檔案裡,這樣,每個檔案包含的 就相對較少,很多程式語言都採用這種組織 的方式。在python中,乙個.py檔案就稱之為乙個模組 module 使用模組有...

Lua程式設計(二十八)

lua語言會在執行源 之前先對其進行預編譯。生成預編譯檔案 也被稱為二進位制檔案,binary chunk 的最簡單方式是,使用標準發行班中附帶的luac程式。luac o prog.lc prog.lua上述命令會建立檔案prog.lua的預編譯版本prog.lc。lua解析器會像執行普通lua ...