一、 服務(wù)器優(yōu)化
Windows系列:
64位Win2008r2 + Hpyer-V + 負(fù)載均衡 + IIS7.5
64位Win2003 + 虛擬機(jī) + 負(fù)載均衡 + IIS6
禁止服務(wù)器訪問(wèn)外網(wǎng)。關(guān)掉不必要的端口。
去掉每個(gè)磁盤(pán)的所有權(quán)限,只保留administrators組和system完全控制權(quán)限。
IIS7.5標(biāo)識(shí)使用ApplicationPoolIdentity,給目錄權(quán)限用戶是:IIS AppPool\站點(diǎn)名
IIS6需要為每個(gè)站點(diǎn)建獨(dú)立的用戶,為IIS用戶單獨(dú)設(shè)置權(quán)限。
IIS禁止日志記錄。
二、 數(shù)據(jù)庫(kù)優(yōu)化
l 64位MSSQL2008:
少用觸發(fā)器/游標(biāo)/外鍵。多用存貯過(guò)程和視圖。適量使用索引查詢速度會(huì)提高很多,每個(gè)表的索引盡量不要超過(guò)3個(gè)。
定時(shí)查看死鎖的進(jìn)程和等待進(jìn)程,并清除,還要及時(shí)修正死鎖的來(lái)源。
復(fù)雜的統(tǒng)計(jì)報(bào)表需要用計(jì)劃去跑。
查詢記錄數(shù)要使用count(0) 不要使用count(*)。
select的時(shí)候表字段不要使用*。*查詢所有字段是很慢的。
如果字段是索引列可使用UNION ALL 替代 OR,走索引線路查詢。
大記錄集要使用分頁(yè)查詢。
盡量不要使用TEXT/NTEXT類型,要使用VARCHAR(MAX)/NVARCHAR(MAX)。
盡量不要使用臨時(shí)表,要使用Table表類型或內(nèi)嵌視圖。
三、 后端優(yōu)化
l 多使用DbDataReader,盡量不要使用DataTable/DataSet讀取數(shù)據(jù)。
l for (int i = 0; i < dt.Rows.Count; i++) 應(yīng)該這么寫(xiě):
for (int i = 0, len = dt.Rows.Count; i < len; i++)或
foreach (DataRow info in dt.Rows)推薦這種寫(xiě)法
l 少用try catch,用到try catch時(shí)要和 finally一起使用。
l 多使用using如:
using (DbDataReader dr = Data.GetDbDataReader(strSql)) { while (dr.Read()) { }; }
l 大字符串操作請(qǐng)使用StringBuilder 少使用string,字符串比較用Compare,字符串相加用Concat,大字符串相加用StringBuilder Append。
l 變量要在先定義在使用,不要在循環(huán)內(nèi)定義變量。如:
錯(cuò)誤的寫(xiě)法是:for (int i = 1; i < 10; i++) { string s = i.ToString(); }
正確寫(xiě)法:string s = string.Empty; for (int i = 1; i < 10; i++) { s = i.ToString(); }
這里還有一個(gè)地方要注意的:在字符串相加的時(shí)候,如果有int類型的要先轉(zhuǎn)成string類型在相加,減少不必要的裝箱拆箱操作。
l 如果你使用的是HTML控件,需要禁用<%@ Page EnableViewState="false" AutoEventWireup="false" EnableSessionState="false",web.config <pages enableViewState="false" enableSessionState="false" />
l 使用foreach替代for
l 操作數(shù)據(jù)庫(kù)要使用存貯過(guò)程/視圖。
l 多使用CACHE對(duì)數(shù)據(jù)緩存。這才是最關(guān)鍵的。NET提供:HttpContext.Current.Cache/HttpRuntime.Cache,共享緩存有velocity/ memcached
l 可使用<%@ OutputCache Duration="60" 緩存頁(yè)面,可使用Response.BufferOutput = true;/ <%@ Page Buffer="true" 輸出緩沖。
l 可將站點(diǎn)生成靜態(tài)面頁(yè),好處多多。
l 可使用URL重寫(xiě)成偽靜態(tài),提供rss/baidu-sitemap/google-sitemap服務(wù),有利于搜索引擎收錄。
l Ajax調(diào)用頁(yè)面要使用.ashx一般處理程序,速度要比.aspx文件要快。Ajax請(qǐng)求要使用POST不要使用GET。
l 發(fā)布站點(diǎn)時(shí)DLL要Release版本,不要用Debug版本。
l IIS需要使用集成模式,不要使用經(jīng)典模式。
l Web.config 加 <customErrors mode="On" /> 關(guān)閉錯(cuò)誤提示。
l Web.config 加 <compilation debug="false" /> 關(guān)閉調(diào)試模式。
l 使用Server.Transfer替換Response.Redirect
l 多使用泛型集合操作,少用ArrayList。
四、 前端優(yōu)化
l 最好不使用NET控件,用HTML控件,頁(yè)面使用CSS+DIV布局。
l 使用JSON + AJAX進(jìn)行數(shù)據(jù)交互。
l 要學(xué)會(huì)使用jQuery提高開(kāi)發(fā)速度。
l 盡量少用<img標(biāo)記,改用background樣式控制背景圖片。這樣做的好處是方便擴(kuò)展多皮膚。
l 將CSS background背景圖片多張合并成一張圖片,保證合并后的圖片大小不要超過(guò)50K。可將JS文件合并在一個(gè)JS文件中,然后使用closure_packer_yui_compiler進(jìn)行壓縮,這樣做的好處是可減少客戶端連接數(shù)。
l JS代碼段不要放在HTML頁(yè)面,應(yīng)該放在獨(dú)立的JS文件里面,好處是JS文件可以CDN/緩存。
l 可將CSS文件放到<head></head>之間,JS文件或代碼放到</body>之前,讓頁(yè)面先顯示在執(zhí)行JS。
l 可將網(wǎng)站的圖片/CSS/JS/資料/資源放到獨(dú)立的站點(diǎn),做下CDN加速,二級(jí)域名會(huì)有COOKIES,最好使用一級(jí)域名。
l A標(biāo)記和IMG標(biāo)記需要加上title/alt,<head>標(biāo)簽內(nèi)需要加title/keywords/description/rss/sitemap優(yōu)化,有利于搜索引擎收錄。
l 頁(yè)面可啟用gzip壓縮。
l 安裝FF的插件“YSlow/Page Speed”。
五、 其它優(yōu)化
提搞網(wǎng)站訪問(wèn)速度可做哪些優(yōu)化小結(jié)
2020-09-14 23:09建站教程網(wǎng) 建站經(jīng)驗(yàn)
如何讓您的網(wǎng)站訪問(wèn)速度更快,下面是從服務(wù)器運(yùn)行環(huán)境與程序結(jié)合總結(jié)了以下幾點(diǎn)。
延伸 · 閱讀
- 2022-03-11Android 優(yōu)化之卡頓優(yōu)化的實(shí)現(xiàn)
- 2022-03-11Android 優(yōu)化之a(chǎn)pp啟動(dòng)優(yōu)化的實(shí)現(xiàn)
- 2022-03-11Android 優(yōu)化之存儲(chǔ)優(yōu)化的實(shí)現(xiàn)
- 2022-03-11Android優(yōu)化之電量?jī)?yōu)化的實(shí)現(xiàn)
- 2022-03-10分布式數(shù)據(jù)庫(kù)排序及優(yōu)化
- 2022-03-10vue.config.js打包優(yōu)化配置
- 建站經(jīng)驗(yàn)
微企點(diǎn)如何在一片紅海的建站市場(chǎng)里突圍?
微企點(diǎn)是H5自助建站和網(wǎng)頁(yè)制作平臺(tái),從個(gè)人到企業(yè)、機(jī)構(gòu)都可以免費(fèi)用微企點(diǎn)建站做網(wǎng)頁(yè)。目前建站模板、主機(jī)空間、流量、域名捆綁等均可以免費(fèi)使用...
- 建站經(jīng)驗(yàn)
百度再次告訴我們:站長(zhǎng)做好你的用戶體驗(yàn)是很有必要的
相信互聯(lián)網(wǎng)最近大家談?wù)撟疃嗟木褪前俣鹊?9億收購(gòu)案了,但對(duì)于站長(zhǎng)來(lái)說(shuō),大家關(guān)注最多的應(yīng)該就是7月19日的新公告:出售二級(jí)域名或目錄用于作弊將株...
- 建站經(jīng)驗(yàn)
為什么網(wǎng)站內(nèi)容沒(méi)有被百度收錄
為什么 網(wǎng)站 內(nèi)容沒(méi)有被 百度收錄 ? 百度沒(méi)有收錄網(wǎng)站,可能是因?yàn)榉?wù)器之家站。 目前百度蜘蛛有兩種抓取方式,一種是主動(dòng)抓取,另一種是在百度站...
- 建站經(jīng)驗(yàn)
網(wǎng)站優(yōu)化經(jīng)驗(yàn)之談
經(jīng)過(guò)半年多的深入研究,我們發(fā)現(xiàn)網(wǎng)站優(yōu)化有些類似畫(huà)圓,尤其確定圓心位置和半徑最為關(guān)鍵。 ...
- 建站經(jīng)驗(yàn)
天涯(tianya)bbs系統(tǒng)架構(gòu)分析
天涯bbs系統(tǒng)架構(gòu)分析,看看windows主機(jī)也可以抗住很大的流量。 ...
- 建站經(jīng)驗(yàn)
做產(chǎn)品營(yíng)銷應(yīng)該搭建一個(gè)什么樣的網(wǎng)站?
如果你已經(jīng)決定要自己建一個(gè)網(wǎng)站,首先會(huì)考慮選擇什么樣的網(wǎng)站程序?而在這個(gè)網(wǎng)址程序中又該選擇什么樣的模板?有經(jīng)驗(yàn)的朋友會(huì)在自己使用過(guò)的程序中...
- 建站經(jīng)驗(yàn)
什么是網(wǎng)站空間 要如何選擇
網(wǎng)站空間,顧名思義,就是能夠存放一些關(guān)于網(wǎng)站的文件和資料,比如文檔、文字、網(wǎng)站頁(yè)面和圖片等信息,那么,網(wǎng)站空間要如何選擇呢?對(duì)此,本文就...
- 建站經(jīng)驗(yàn)
營(yíng)銷型網(wǎng)站建設(shè)怎么規(guī)劃網(wǎng)站頁(yè)面
近年來(lái),互聯(lián)網(wǎng)的發(fā)展迅速是眾所周知的,它帶動(dòng)出來(lái)的商機(jī)讓無(wú)數(shù)個(gè)互聯(lián)網(wǎng)創(chuàng)業(yè)者熱心洶涌,躍躍欲試。初步通過(guò)自建網(wǎng)站的方法,拓展互聯(lián)網(wǎng)途徑,可...