亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        改善ASP.NET2.0性能方法研究

        2009-04-27 10:03:36吳麗萍張林霞于廣州
        商情 2009年1期
        關(guān)鍵詞:控件應(yīng)用程序內(nèi)存

        吳麗萍 張林霞 于廣州

        【摘 要】本文首先簡單介紹了asp.net2.0的概括和特性,然后列舉出幾個(gè)影響asp.net應(yīng)用程序性能的標(biāo)準(zhǔn),最后結(jié)合開發(fā)asp.net2.0應(yīng)用程序的經(jīng)驗(yàn)總結(jié)出了幾條改進(jìn)asp.net2.0應(yīng)用程序性能的方法。

        【關(guān)鍵詞】ASP.NET2.0web調(diào)試

        一、ASP.NET 2.0新特性

        ASP.NET 2.0技術(shù)增加了大量方便、實(shí)用的新特性。ASP.NET 2.0主要提供控件、頁面框架、服務(wù)與APIs等3個(gè)方面的技術(shù)特性。

        1.控件在ASP.NET 1.x時(shí)代,由于內(nèi)置服務(wù)器控件數(shù)量有限、功能覆蓋面窄。為了消除這個(gè)技術(shù)軟肋,ASP.NET 2.0做出了突破性改進(jìn)。在ASP.NET 2.0中,新增數(shù)十個(gè)服務(wù)器控件。根據(jù)控件功能特征,可分為:數(shù)據(jù)控件(包括數(shù)據(jù)源控件和數(shù)據(jù)綁定控件)、登錄系列控件、Web部件、站點(diǎn)導(dǎo)航控件和其他控件等。這些服務(wù)器控件對于提高工作效率,降低開發(fā)成本有著重要作用。2.頁面框架在頁面框架方面,ASP.NET 2.0同樣做出了重大改進(jìn),主要體現(xiàn)在以下4項(xiàng)技術(shù)特性:母版頁、主題和皮膚、編譯機(jī)制和本地化。母版頁特性在大型Web站點(diǎn)中應(yīng)用廣泛,它能夠在一定程度上代替框架頁功能,從而迅速建立具有統(tǒng)一布局和外觀的頁面,并且有效降低維護(hù)人員的工作強(qiáng)度。主題和皮膚是ASP.NET 2.0的一項(xiàng)新增功能,使用此功能可以一次性設(shè)置一種類型的服務(wù)器控件外觀樣式。該外觀可方便地應(yīng)用于單個(gè)頁面、整個(gè)Web應(yīng)用程序,甚至整個(gè)服務(wù)器。在應(yīng)用程序編譯方面,ASP.NET 2.0提供了幾種替代方案,從而擴(kuò)大了編譯的選擇范圍,開發(fā)人員可以根據(jù)特定需要進(jìn)行選擇。另外,ASP.NET 2.0在本地化方面也做出了一些改進(jìn)。

        3.服務(wù)與APIS這個(gè)部分包括的新特性在ASP.NET 2.0中占有較大比例,主要包括成員資格管理、角色管理、用戶配置、數(shù)據(jù)緩存、配置與管理工具等。利用這些功能,可以快速實(shí)現(xiàn)用戶和角色管理、個(gè)性化用戶配置、數(shù)據(jù)緩存、應(yīng)用程序可視化配置等任務(wù)。以成員資格和角色管理功能為例,在ASP.NET 1.x時(shí)代,實(shí)現(xiàn)這兩項(xiàng)功能是比較繁瑣和困難的;而在ASP.NET 2.0中不僅提供默認(rèn)數(shù)據(jù)庫表,而且只需調(diào)用幾個(gè)簡單的方法,就能夠輕松地實(shí)現(xiàn)成員和角色管理功能。

        二、影響ASP.NET應(yīng)用程序性能的度量標(biāo)準(zhǔn)1.執(zhí)行時(shí)間

        處理一個(gè)請求所需的時(shí)間,通常按服務(wù)器向客戶端返回的第一個(gè)字節(jié)和最后一個(gè)字節(jié)之間的時(shí)間計(jì)算。執(zhí)行時(shí)間直接影響吞吐量的計(jì)算。

        2.響應(yīng)時(shí)間

        從發(fā)出請求到服務(wù)器向客戶端返回第一個(gè)字節(jié)之間的時(shí)間長度。對于客戶端用戶,這通常是性能中最直觀的一個(gè)方面。如果應(yīng)用程序響應(yīng)時(shí)間很長,用戶可能會(huì)覺得不耐煩,并轉(zhuǎn)到另一個(gè)站點(diǎn)。應(yīng)用程序的響應(yīng)時(shí)間的改變與吞吐量的速率無關(guān)(甚至成反比)。

        3.可縮放性

        用于衡量應(yīng)用程序在獲取更多資源(內(nèi)存、處理器或計(jì)算機(jī))時(shí)更好地執(zhí)行的能力。它經(jīng)常按吞吐量相對于處理器數(shù)的更改速率計(jì)算。

        4.吞吐量

        web應(yīng)用程序在單位時(shí)間之內(nèi)可以處理的請求數(shù),經(jīng)常以每秒請求數(shù)衡量。吞吐量可以根據(jù)應(yīng)用于服務(wù)器的加載(客戶端線程數(shù))而不同,這通常被視為要優(yōu)化的最重要的性能度量。為

        了編寫正常且高效執(zhí)行的應(yīng)用程序,務(wù)必要保持這些度量的合理取值范圍。

        三、改進(jìn)ASP.ENT應(yīng)用程序的性能

        ASP.NET 2.0模型提供了許多內(nèi)置的性能增強(qiáng)功能,尤其是在HTTP請求的處理方面的兩項(xiàng)功能:第一,當(dāng)首次請求ASP.NET頁面時(shí),將動(dòng)態(tài)編譯Page類的實(shí)例。公共語言運(yùn)行時(shí)(CLR)會(huì)將ASP.NET托管頁代碼實(shí)時(shí)編譯為處理服務(wù)器的本機(jī)代碼。第二,當(dāng)為第一個(gè)請求編譯Page類實(shí)例后,就將其緩存到服務(wù)器上。對于隨后對該頁的每個(gè)請求,將執(zhí)行該類緩存的實(shí)例。除非該頁的初始源或它的一個(gè)依賴項(xiàng)發(fā)生更改,否則對Page類的編譯只發(fā)生在最初請求之后,這極大地提高了ASP.NET頁面的訪問速度。但要保證用戶所編寫的應(yīng)用程序能夠同時(shí)處理多個(gè)HTTP請求,從而改善ASP.NET應(yīng)用程序的性能,還需從以下幾個(gè)方面著手來確保所編寫的代碼能夠達(dá)到較高的性能級(jí)別。

        1.及時(shí)處理數(shù)據(jù)訪問對象

        在給予ASP.NET 2.0的應(yīng)用程序中,如果沒有正確處理數(shù)據(jù)訪問對象,就會(huì)大量消耗的服務(wù)器內(nèi)存。當(dāng)建立一個(gè)數(shù)據(jù)訪問對象時(shí),充分理解這些控件的生命周期,并且能在不需要時(shí)即使進(jìn)行處理是非常必要的,這樣能確保數(shù)據(jù)訪問對象適當(dāng)?shù)乇还芾恚苊夥?wù)器在內(nèi)存占用過多的情況下才進(jìn)行內(nèi)存釋放。

        2.合理應(yīng)用IIS應(yīng)用程序池

        在典型的應(yīng)用中,當(dāng)處理一個(gè)Web應(yīng)用程序時(shí),這個(gè)Web程序由多個(gè)部分組成。通常有主Web站點(diǎn),一個(gè)或多個(gè)Web服務(wù),或是一個(gè)圖像處理程序。應(yīng)用程序池允許使應(yīng)用程序在各自的單獨(dú)進(jìn)程中運(yùn)行,將我們的應(yīng)用程序的不同組成部分分開,使它們分別運(yùn)行在自己的內(nèi)存空間中。由于每個(gè)處理進(jìn)程的內(nèi)存達(dá)到800-900M時(shí)系統(tǒng)就會(huì)變得很慢,因此,需要應(yīng)用程序分散到不同的處理進(jìn)程中,這樣每個(gè)工作進(jìn)程占有的內(nèi)存就不會(huì)那么大了,這樣會(huì)從某種程度上提高系統(tǒng)運(yùn)行的效率。

        3.正確管理ASP.NET狀態(tài)

        為了更進(jìn)一步地改善應(yīng)用程序性能,對ASP.NET的不同的狀態(tài)類型有一個(gè)深入的了解是非常必要的。ASP.Net有許多不同的狀態(tài),分別是應(yīng)用程序狀態(tài)、會(huì)話狀態(tài)和profile屬性,這些狀態(tài)都保存在服務(wù)器的內(nèi)存上。所以應(yīng)盡量避免保存太多這三種狀態(tài)的數(shù)據(jù),除非有必要保存它們。例如,如果需要在會(huì)話狀態(tài)保存數(shù)據(jù),就只存需要的數(shù)據(jù),如標(biāo)識(shí)字段或靜態(tài)數(shù)據(jù)頻繁被使用。因此,它們可以保存在會(huì)話狀態(tài)中。

        4.清除不需要的CSS和腳本文件

        一個(gè)快速和容易的改善應(yīng)用程序性能的方法就是清楚程序中的不需要的CSS和腳本文件。在開發(fā)程序時(shí),在不斷完善系統(tǒng)的過程中,可能會(huì)遺留很多沒用的腳本文件或腳本程序。需要網(wǎng)站使用了一個(gè)單獨(dú)的CSS或腳本文件來滿足整個(gè)網(wǎng)站的需要。這樣做將會(huì)產(chǎn)生大量的數(shù)據(jù)和代碼冗余。如果在網(wǎng)站的代碼中繼續(xù)引用不再使用的CSS或腳本文件,那么在每次加載網(wǎng)頁時(shí)它們都會(huì)進(jìn)行被傳輸,這樣將是對網(wǎng)絡(luò)資源的一種浪費(fèi)??梢酝ㄟ^運(yùn)行一個(gè)Web頁分析器來準(zhǔn)確地知道哪個(gè)頁被轉(zhuǎn)載,哪個(gè)頁裝載的時(shí)間最長。

        5.對系統(tǒng)進(jìn)行測試

        裝載測試從本質(zhì)上說是發(fā)現(xiàn)系統(tǒng)的性能問題,并測量系統(tǒng)在單位時(shí)間內(nèi)的響應(yīng)次數(shù)。Visual Studio Team系統(tǒng)(VSTS)包括了一個(gè)強(qiáng)大的簡單的工具,用來對Web程序進(jìn)行裝載測試,并提供更有價(jià)值的報(bào)告。使用測試模板可以非常簡單地按著系統(tǒng)所提示的步驟建立一個(gè)測試工程??山⒁粋€(gè)或多個(gè)Web測試,并為每一個(gè)Web測試配置相應(yīng)的屬性來模擬不同的用戶。Web測試通過模擬的用戶進(jìn)行測試,這將作為裝載測試的一部分。還可以使用性能監(jiān)視器在服務(wù)器上安裝性能計(jì)數(shù)器。使用性能計(jì)數(shù)器監(jiān)測Web服務(wù)器上發(fā)生的一些特殊活動(dòng)數(shù)據(jù),如私有字節(jié)、虛擬字節(jié)以及CPU使用率等。如果在應(yīng)用程序中有內(nèi)存漏洞,那么很容易通過監(jiān)視內(nèi)存來發(fā)現(xiàn)這些漏洞。所得到的結(jié)果將以來于應(yīng)用程序裝載什么而有細(xì)微的差別,但是Web服務(wù)器的內(nèi)存應(yīng)該達(dá)到一個(gè)一致的水平,并保持穩(wěn)定。

        四、總結(jié)

        上面所提到的幾個(gè)個(gè)用于改善Web性能的方法非??旖?,并不需要更多的開發(fā)經(jīng)驗(yàn)和工作技巧。本文提到的提高ASP.Net性能的策略只是一個(gè)起步,只有通過自己的實(shí)踐,才能找到對每一個(gè)不同項(xiàng)目最有幫助的技巧。然而,在任何一個(gè)開發(fā)旅程中,這些策略可以起一些必要的指導(dǎo)作用。

        參考文獻(xiàn):

        [1]李應(yīng)偉等.ASP.NET數(shù)據(jù)庫高級(jí)教程.清華大學(xué)出版社,2004,7.

        [2]Chris Knowles.ASP.NET XML高級(jí)縞程.清華大學(xué)出版社,2002,12.

        [3]三味工作室.SQL Server 2000.人民郵電出版社,2000,11.

        [4]曾誠.高性能ASP.NET應(yīng)用程序的探討與研究.湖北大學(xué)學(xué)報(bào)(自然科學(xué)版),2004,26(1):19-22.

        [5]于瑞國等.ASP.NET新特性的初步研究[J].電子計(jì)算機(jī),2002,(2):11-14.

        (作者單位:廣東海洋大學(xué))

        猜你喜歡
        控件應(yīng)用程序內(nèi)存
        刪除Win10中自帶的應(yīng)用程序
        “春夏秋冬”的內(nèi)存
        關(guān)于.net控件數(shù)組的探討
        軟件(2018年7期)2018-08-13 09:44:42
        基于內(nèi)存的地理信息訪問技術(shù)
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        就這樣玩會(huì)VBA中常見的自定義控件
        電腦迷(2012年24期)2012-04-29 00:44:03
        三星電子將開設(shè)應(yīng)用程序下載商店
        微軟軟件商店開始接受應(yīng)用程序
        上網(wǎng)本為什么只有1GB?
        在PowerBuUder中利用WinSock控件制作簡單的Web服務(wù)器
        久久久精品波多野结衣| 99精品久久精品一区二区| 狠狠躁18三区二区一区| 亚洲日韩激情无码一区| 老太脱裤子让老头玩xxxxx| 三年在线观看免费大全下载 | 91精品久久久老熟女91精品| 蜜桃18禁成人午夜免费网站| 天天做天天摸天天爽天天爱| 久久久国产乱子伦精品作者| 国产人妻精品一区二区三区| 色老汉免费网站免费视频| 亚洲精品综合第一国产综合| 老熟女重囗味hdxx70星空| 夜夜春精品视频| 国产视频不卡在线| 亚洲色图在线视频观看| 久久国产精品国语对白| 亚洲av成人av三上悠亚| 中国女人内谢69xxxxxa片| 国产精品美女一区二区三区 | 久久久久久国产精品免费免费| 亚洲av色福利天堂| 中文字幕乱码亚洲无线精品一区| 麻豆AV无码久久精品蜜桃久久| 白色白色在线视频播放平台| 亚洲精品女同一区二区三区| 成人av片在线观看免费| aa片在线观看视频在线播放| 久久99精品久久久久久野外| 蜜臀av中文人妻系列| 免费视频一区二区三区美女| 男女主共患难日久生情的古言| 国产三级在线观看完整版| 麻豆精品久久久久久久99蜜桃| 精品久久久久久国产| 99re国产电影精品| 精品国产麻豆免费人成网站| 人人妻人人澡人人爽国产| 亚洲中文字幕在线第二页| 欧美一级在线全免费|