国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

通過改善架構來提高 ASP.Net 應用程序的性能

2019-11-18 17:14:03
字體:
來源:轉載
供稿:網友

   有的時候我們的 Web 應用程序在本機測試的時候,速度很快,可放在局域網上測試的時候,卻會發現存在性能問題;甚至有時在局域網速度正常的應用,在廣域網上還會發現問題。這些問題一般都是應用中的疏忽或錯誤,并不涉及到系統架構,通過真實環境的調試和測試都能找到問題所在并解決。
    今天我們所要說的是通過改善架構來從根本上提高 asp.net 應用程序的性能。
    我們先來對 ASP.Net 的幾個簡單的應用做一下測試。
    測試環境:AthlonXP 3200+,DDR400 512M,WindowsXP SP2,本機的SQL Server 2000,中文 Northwind 數據庫(從access導入)的產品表,約70條記錄。

測試序號程序類型測試方法測試結果
(每秒請求數)
SQLServer
所占用資源
ASP.Net
所占用資源
1Web服務用產品表填充DataSet,并返回記錄數250次100%-
2Web服務用產品表填充DataSet,并返回 DataSet138次54%46%
3Web應用程序用產品表填充DataSet,并綁定 DataGrid70次28%72%
說明:不同系統的測試結果可能不同,但測試結果的相對比例應該差別不大。

    在第一個測試里,Web 服務只是從數據庫讀取記錄填充到 DataSet,并返回記錄數(注意不是返回記錄),所占用的系統資源很少,假設系統資源完全被SQLServer 占用,并且對結論不會有負面影響。
    在第二個測試中,Web 服務將 DataSet 返回,每秒請求數就降低了幾乎一半, 這一半的系統資源,被ASP.Net 用于將 DataSet 序列化。
    在第三個測試中,Web 應用程序將 DataSet 綁定到 DataGrid,并返回頁面,每秒請求數幾乎降低了四分之三,這些系統資源被 ASP.Net 用于將 DataSet 綁定到 DataGrid,并將頁面序列化。

    從以上測試中我們可以看到,DataGrid 的綁定和序列化會占用大量的系統資源,如果要提高系統性能,需要通過改善架構來實現。

    一、將對數據庫的操作,從頁面中分離出來,放到獨立的持久層。
    這樣在客戶端通過 DOM 或 XSLT 將數據展現為表格,來代替服務器端 DataGrid 的綁定工作,大大減輕了服務器的壓力。并且客戶端通過 Ajax 從持久層獲取數據,會提高用戶的使用體驗。
    二、將頁面從數據中徹底獨立出來,以便利用緩存。
    有的應用了 AJAX 的頁面還是會讀取初始數據,這樣的話頁面就不能緩存。這些頁面一般比較復雜,會比普通頁面占有更多的資源,如果能夠利用緩存,將進一步提高系統的性能。

    通過以上兩點,ASP.Net 的性能,幾乎能夠提高一倍。

    您可以自己作一下測試,或者訪問我們的示例 www.BizStruct.cn


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 太白县| 静安区| 大邑县| 新竹县| 太原市| 黔东| 宁夏| 大田县| 千阳县| 惠来县| 乐陵市| 宜君县| 正镶白旗| 玉田县| 苏尼特右旗| 稷山县| 固镇县| 乐亭县| 黔西县| 莲花县| 芦溪县| 林口县| 三台县| 沭阳县| 延庆县| 宜丰县| 仁布县| 桃园市| 诸暨市| 莒南县| 邻水| 丹巴县| 云安县| 富裕县| 榆中县| 丹寨县| 康保县| 抚顺县| 郓城县| 灵台县| 澳门|