歡迎來(lái)到合肥浪訊網(wǎng)絡(luò)科技有限公司官網(wǎng)
  咨詢服務(wù)熱線:400-099-8848

干貨分享提升ASP.NET功能運(yùn)用的20種技巧-下篇

發(fā)布時(shí)間:2017-11-26 文章來(lái)源:本站  瀏覽次數(shù):3670

浪訊科技持續(xù)為您帶來(lái)進(jìn)步ASP.NET功能技巧的開發(fā)思路:

11.運(yùn)用 Page.IsPostback

請(qǐng)保證不履行過多的回傳代碼。運(yùn)用 Page.IsPostBack 特點(diǎn),以保證只履行頁(yè)面初始化邏輯,當(dāng)一個(gè)頁(yè)面第一次加載,而不向呼應(yīng)客戶回發(fā)。

12.運(yùn)用分頁(yè)

大多數(shù) Web 運(yùn)用程序數(shù)據(jù)是以表格方式顯現(xiàn)。分頁(yè)有運(yùn)用運(yùn)用開發(fā)程序功率。每次盡量顯現(xiàn)小部分?jǐn)?shù)據(jù),這樣會(huì)加速頁(yè)面顯現(xiàn)速度。

13.運(yùn)用 Ajax 異步調(diào)用

運(yùn)用 Ajax 辦法,進(jìn)行異步調(diào)用。

14.刪去未運(yùn)用的 HttpModules

關(guān)于 httpModules,我們能夠理解為:樹立一個(gè)通用的可用被刺進(jìn)任何 Web 運(yùn)用程序的 HttpApplication 事情鉤子。運(yùn)用 HttpModule 是可復(fù)用的,不需求特定語(yǔ)運(yùn)用程序代碼的,只需求 web.config 中的一個(gè)條目。 在 web.config 文件中,刪去未運(yùn)用的 HttpModules。

15.防止遞歸函數(shù)/嵌套循環(huán)

在任何編程言語(yǔ)中都需防止嵌套循環(huán)和遞歸函數(shù),以進(jìn)步功能。

16.不運(yùn)用不必要的 Server Control

ASP.NET 中,很多的服務(wù)器端控件方便了程序開發(fā),但也可能帶來(lái)功能的損失,因?yàn)橛脩裘坎僮饕淮畏⻊?wù)器端控件,就產(chǎn)生一次與服務(wù)器端的往復(fù)進(jìn)程。因而,非必要,應(yīng)當(dāng)少運(yùn)用 Server Control。

17.調(diào)用多個(gè)操作時(shí),請(qǐng)運(yùn)用多線程

問題出現(xiàn)時(shí),單線程卡在此問題上長(zhǎng)期運(yùn)行。因而,能夠運(yùn)用多個(gè)線程以進(jìn)步運(yùn)用程序的呼應(yīng)速度。

18.數(shù)據(jù)庫(kù)的銜接和封閉

拜訪數(shù)據(jù)庫(kù)資源需求創(chuàng)立銜接、翻開銜接和封閉銜接幾個(gè)操作。這些進(jìn)程需求屢次與數(shù)據(jù)庫(kù)交流信息以經(jīng)過身份驗(yàn)證,比較消耗服務(wù)器資源。ASP.NET 中提供了銜接池(Connection Pool)改進(jìn)翻開和封閉數(shù)據(jù)庫(kù)對(duì)功能的影響。體系將用戶的數(shù)據(jù)庫(kù)銜接放在銜接池中,需求時(shí)取出,封閉時(shí)回收銜接,等候下一次的銜接懇求。銜接池的巨細(xì)是有限的,如果在銜接池到達(dá)最大極限后仍要求創(chuàng)立銜接,必定大大影響功能。因而,在樹立數(shù)據(jù)庫(kù)銜接后只有在實(shí)在需求操作時(shí)才翻開銜接,運(yùn)用完畢后立刻封閉,從而盡量削減數(shù)據(jù)庫(kù)銜接翻開的時(shí)刻,防止出現(xiàn)超出銜接約束的狀況。

19.高功能的 SQL 句子規(guī)矩

盡量防止全表掃描

盡量防止在 where 子句中對(duì)字段進(jìn)行 null 值判別

盡量防止在 where 子句中運(yùn)用 != 或 <> 操作符

盡量防止在 where 子句中運(yùn)用 or 來(lái)銜接條件

in 和 not in 也要慎用

不要在 where 子句中的「=」左面進(jìn)行函數(shù)、算術(shù)運(yùn)算或其他表達(dá)式運(yùn)算

Update 句子,如果只更改1、2個(gè)字段,不要Update悉數(shù)字段

關(guān)于多張大數(shù)據(jù)量(這兒幾百條就算大了)的表JOIN,要先分頁(yè)再JOIN,否則邏輯讀會(huì)很高,功能很差

20.緩存

緩存是一種用空間換取時(shí)刻的技能,通俗點(diǎn)也就是說把你得到的數(shù)據(jù)存放在內(nèi)存中一段時(shí)刻,在這短時(shí)刻內(nèi)服務(wù)器不去讀取數(shù)據(jù)庫(kù)、或是實(shí)在的數(shù)據(jù)源,而是讀取你存放在內(nèi)存中的數(shù)據(jù)。 緩存是網(wǎng)站功能優(yōu)化不行短少的一種數(shù)據(jù)處理機(jī)制,他能有用的緩解數(shù)據(jù)庫(kù)壓力。 ASP.NET 中的緩存首要分為:

頁(yè)面緩存

數(shù)據(jù)源緩存

自定義數(shù)據(jù)緩存

上一條:知乎社區(qū)非常重要的四個(gè)產(chǎn)...

下一條:干貨共享提升ASP.NE...