對BLL/DAL使用模塊或共享/靜態引用可以提高ASP.NET網站的性能嗎?可以通過模塊/靜態類來提高ASP.NET性能嗎?
我工作的網站由兩個項目組成,一個是網站,另一個是作爲DAL和BLL組合的VB.NET類庫。
該庫用於與數據庫進行通信,有時還會轉換/驗證進入/來自數據庫的數據。
當前網站上需要db訪問(絕大多數)的每個頁面將在庫中創建相關類的實例以訪問特定的表。
據我所知,這導致了庫中的類被實例化併爲每個請求進行垃圾收集,如果多個用戶查看同一頁面,可能會有多個併發實例。
如果我將這些類轉換爲模塊(共享/靜態類),性能會增加並且內存被保存,因爲每次只存在一個模塊的一個實例,並且不必爲每個請求創建一個新實例?
(如果是這樣,沒有人知道是否有TableAdapter的作爲模塊的全局變量會導致由於線程問題?)
或者會使得引用到圖書館類是ASP.NET頁面有同樣的效果? (除了我將不得不重寫很多)
我一直在尋求提高網站效率,現在我會尋找一種不同的方式來做到這一點。感謝您的幫助 – wjamie2340 2011-12-16 13:28:09