2013-11-20 81 views
0

我在ASP.NET網站上有一個網頁,其中顯示了大約3000條記錄(在代碼邏輯寫好幾年之後,記錄的數量大幅增長)。這個頁面也使用Jquery。ASP.NET網頁 - >顯示靜態信息的最佳方式

頁面上的顯示是表格格式,第一列是圖像(從web服務器位置讀取),然後是項目組,然後是項目編號。它使用並在用戶導航到此網頁時即時生成此html。

隨着記錄數量的增加,頁面開始緩慢渲染。

我打算重寫這裏的邏輯。由於信息沒有變化,我想通過將信息存儲爲html來顯示頁面上的內容,然後在用戶導航到此頁面時顯示html。除了html之外,還有其他更好的建議嗎?

請建議這裏有什麼最好的選擇。

+0

當你說'將信息存儲爲html'時,我很困惑。你的意思是你將存儲在客戶端的HTML,但只是隱藏它,或者只有當用戶導航到頁面時,它纔會從服務器上拉下來並呈現在頁面上? –

+0

@ QuetiM.Porta:我想存儲在服務器上,它只顯示用戶進入頁面。該html將成爲3000條記錄的格式化(表格,tr,td)。我將在其他地方生成HTML(而不是在用戶導航到此頁面時)。 – Anirudh

回答

1

您提到「頁面已隨記錄數增加而開始緩慢渲染」,並且您決定將生成的HTML緩存在服務器上,然後在請求時提供緩存版本。

請記住,任何數量的問題都可能導致頁面呈現緩慢的瓶頸:請求(DNS查找),服務器(數據庫,生成HTML),響應(網絡),渲染HTML(創建DOM )。

在優化應用程序的特定部分之前,我會看到實際存在瓶頸的位置。

我會推薦使用Timeline in Chrome developer tools來查看瓶頸實際存在的位置。我個人認爲這個問題要麼需要很長時間才能下載(確保你是gzip響應),要麼是在渲染HTML的時候,但是如果沒有檢測,這只是一個猜測。

相關問題