*技巧1:給應用層文件使用GLOBAL.ASA
將文件加載GLOBAL.ASA中的一個應用層數組中,而不是通過使用ASP文件系統對像在頁面上讀取文件。
GLOBAL.ASA可用於指定事件腳本,也可用於聲明擁有session或應用程序範圍的對象。它不直接顯示給用戶,而是存儲應用層事件的信息和對象。然後通過頁面就可以指向存有數據的應用層數組。這就意味著每有一個服務器端請求就讀一次文件,不是每個用戶每頁讀一次。你可以運行一個獨立的ASP文件去刷新應用層數組的內容,同時你也可以考慮使用dictionary對像(見技巧9)。
這個技巧可以大大加快你的系統速度。
那麼將如何實現該技巧呢?
如果你是一個腳本編寫人員,必須使用文件系統對像讀取文件放入一個數組或一個dictionary對像中。然後在GLOBAL.ASA中讀取文件並且把數組(放有你讀取的文件內容)或dictionary對像放到應用層聲明中。這樣就可讓用戶在數組或dictionary對像中存取信息,而不必每次通過一個ASP請求去提交信息。
但也許你會想"如果緩存中的內容需要更新又該怎麼辦呢?我敢打賭不會用到。"其實不然。如果緩存中的內容需要更新,你可以調用一個包含有可執行應用程序鎖定命令腳本的僅管理員可存取的ASP文件,在數組或dictionary對像中更新緩存信息,最後執行應用程序鎖定命令。
*技巧2:從產品源代碼中移去HTML註釋(IIS3.0適用)
不錯,難寫的肯定也難懂。開個玩笑,這不代表要你把所有的HTML註釋去掉(腳本註釋就挺好的),大範圍的HTML文本都能成批的拷貝到客戶端。這樣的話,你的腳本在IIS3.0上會運行得更快(在IIS4.0中,HTML註釋不再會導致執行速度的降低)。
*技巧3:多個Response.write聲明
如果你是在代碼中的好幾個地方用格式書寫輸出結果,那麼考慮一下把這些結果合到一塊,用一個Response.write語句寫出來。然後你再看看你的HTML代碼和vbscript腳本的組成。不要把HTML和vbscript腳本散佈得太開,盡量寫成成塊的HTML和vbscript腳本。
*技巧4:使用<OBJECT>標誌例示對像
如果你需要指向那些也許用不著的對象,那麼就用<OBJECT>標誌例示,而不是用Server.createobject.用Server.createobject將立刻生成該對象,如果你以後都用不著它的話,就等於浪費資源。
*技巧5:盡可能的使用本地(局部)變量
(以下的新技巧將取代較早前發布的"在一行內定義變量",其中包含有一些錯誤觀點):