国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - ASP.NET教程 - asp.net小談網(wǎng)站性能優(yōu)化

asp.net小談網(wǎng)站性能優(yōu)化

2019-09-12 11:23asp.net開發(fā)網(wǎng) ASP.NET教程

隨著公司的欄目越來越多,數(shù)據(jù)量的龐大。網(wǎng)站的性能就越嶄露頭角。

當然,網(wǎng)站性能優(yōu)化是多方面的,這里先談一下這些天來的所獲: 
1、書寫代碼的習(xí)慣; 
再復(fù)雜的邏輯,也是從最簡單的開始。在書寫代碼的過程中,很多不好的規(guī)范都會影響網(wǎng)站的性能; 
以下是整理出來的些許代碼習(xí)慣: 
1)字符串的比較 用 string.Empty 代替 " " 
2)在遍歷過程中,先定義好計數(shù)變量, 再遍歷, 這樣會減少每次遍歷就分配一次內(nèi)存空間: 

復(fù)制代碼代碼如下:


int i; 
for( i=0; i<100;i++) 

// codeing 


3)同樣的,用 StringBuilder.Append() 代替 [csharp] string +="ABC" [/csharp]; 
4)在遍歷循環(huán)中中處理邏輯而不要調(diào)用其他方法形式,那樣在調(diào)用時會有性能損耗 
5)累加/減時,使用 A+=1,A-=1 ;而不用 A=A+1;這樣減緩申請內(nèi)存的次數(shù) 
6)多用集合操作 
a:如果如果集合中元素類型固定,則可以使用它們各自對應(yīng)的集合類,如數(shù)組、泛型等,這樣可以避免裝箱、拆箱操作; 
b:如果集合中元素個數(shù)固定并且類型一致,則使用數(shù)組存儲; 
c:如果對集合的操作主要是查找方面的,可以使用HashTable,Dictionaty<TYey,TValue> 
7) 使用Server.Transfer 來進行頁面重定向 
好處:性能比response.redirect要好很多,而且具有隱藏URL的好處,可以避免客戶端進行頁面重定向; 
壞處:要是用戶用刷新或是后退會導(dǎo)致發(fā)生意外的情況,所以請慎用 
8)減少服務(wù)器控件的運用 
9)合理(適當時候)使用緩存 
10)減少Cookies大小 
... ... 
2、數(shù)據(jù)庫 
1)數(shù)據(jù)庫最遲打開、最早關(guān)閉; 
2)優(yōu)化數(shù)據(jù)庫連接配置,對于大型網(wǎng)站由于數(shù)據(jù)庫中存在大量的數(shù)據(jù),所以可以加大其數(shù)據(jù)庫連接池 
Max Pool Size=512;(默認為100) 
3)優(yōu)化SQL語句,并使用存儲過程 
注意:盡量避免“select * from”之類的sql語句;盡量不要再查詢語句中使用子查詢;盡量使用索引; 
4)使用DataReader 
在 DataReader 中,我們經(jīng)常會用dr["字段名"]的查找形式,但是這種寫法卻是最耗性能的; 
一般,使用基于「序列號」的查找,比基于「命名」的查找更有效率。其中,可分為4類: 
寫法 (1) 使用 DataReader 索引 + 基于「序列號」的查找,如:dr[1].ToString(), 
寫法 (2) 使用 DataReader 索引 + 基于「命名」的查找,如:dr["LastName"].ToString(),這是性能最不好的寫法 
寫法 (3) 使用 Get 開頭的方法 + 基于「序列號」的查找,如:dr.GetString(1),寫法 
寫法 (4) 使用 GetSql 開頭的方法 + 基于「序列號」的查找,如:dr.GetSqlString(1), 
寫法 (5)使用 基于「序列號」+ GetOrdinal() 方法的查找。 
GetOrdinal()函數(shù)方法是什么呢? 
我們從數(shù)據(jù)庫中書寫對應(yīng)的字段到我們查找的序列號上,但是有時候插入新的字段時,會有所變化。而GetOrdinal()的作用就是讓我們自己來序列化相對應(yīng)的字段。 
a、首先定義序列號 int classid,classnameid; 
b、然后通過GetOrdinal()方法賦予新的序列號; 
c、通過GetSqlSring( 序列號 ) 方法就可找到對應(yīng)的字段。 
示例代碼如下: 

復(fù)制代碼代碼如下:


SqlConnection con = new SqlConnection(connString); 
string strcmd = "select top 1 classid,classname where cms_class"; 
SqlCommand cmd = new SqlCommand(strcmd, con); 
con.Open(); 
SqlDataReader dr = cmd.ExecuteReader(); 
int numberId, numberName; 
numberId = Convert.ToInt32(dr.GetOrdinal("classid")); 
numberName = Convert.ToInt32(dr.GetOrdinal("classname")); 
con.Close(); 
if (dr.Read()) 

string result = dr.GetSqlString(numberId) + " | " + dr.GetSqlString(numberName); 

dr.Close(); 

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲欧美精品一区 | 亚洲精品无码专区在线播放 | 99视频免费 | 成人在线一区二区 | 中文字幕日本一区二区 | 日韩三区| 777色狠狠一区二区三区 | 欧美精品1区2区 | 成人国产精品久久 | 国产一区二区三区在线 | 久久99深爱久久99精品 | 中文字幕高清在线观看 | 99国产精品99久久久久久 | 奇米一区二区三区 | 欧美激情网| 自拍偷拍欧美 | 91精品久久久久久久久久 | 一区二区三区高清 | 精品粉嫩超白一线天av | 在线国v免费看 | 国产精品v| 亚洲国产高清在线 | 国产人成精品一区二区三 | 成年人av在线 | 天天色av| 91在线一区二区 | 一级黄色大片在线观看 | 午夜小视频在线观看 | 国产美女精品视频免费观看 | 成人影视免费 | 三区视频 | 伊人久久艹 | 欧美三级电影在线播放 | 亚洲精品欧美精品 | 欧美一区永久视频免费观看 | 九九九在线| 亚洲视频在线一区 | 四虎影视 | 三级黄色片在线免费观看 | 午夜视频在线 | 亚洲经典一区 |