目錄
目錄X
SiteFactory?CMS1.1版新增亮點(diǎn)功能快遞:性能的優(yōu)化
SiteFactory? CMS1.1版通過動(dòng)易開發(fā)工程師的不懈努力,在改善SiteFactory? 運(yùn)行環(huán)境、性能優(yōu)化和提升執(zhí)行效率方面,取得了重大進(jìn)展??梢哉f,一直纏繞在用戶心中感覺系統(tǒng)慢的情況將得到較好的解決,各種性能優(yōu)化和改進(jìn)將融入到了SiteFactory?1.1版系統(tǒng)中,而今天我們要介紹的又是性能優(yōu)化中的關(guān)鍵癥結(jié)。
雖然SiteFactory? CMS開放且自由的標(biāo)簽已經(jīng)讓大家欲罷不能,但在內(nèi)置標(biāo)簽中卻隱藏著極深的性能殺手,如:“GetInfoPath”。即將發(fā)布的SiteFactory? 1.1版將對(duì)這些內(nèi)置函數(shù)標(biāo)簽(GetInfoPath等)進(jìn)行性能優(yōu)化。通過優(yōu)化,系統(tǒng)的前臺(tái)整體性能提升可以至少10%以上,在某些情況下甚至?xí)嵘龓妆兜綆资丁?br>
原來的GetInfoPath(string generalid) 內(nèi)置函數(shù)標(biāo)簽是這樣寫的,標(biāo)簽中在使用內(nèi)置方法獲取信息的地址時(shí),就需要去查詢一次數(shù)據(jù)庫(kù),每一條信息都需要查詢一次數(shù)據(jù)庫(kù),這樣頻繁查詢數(shù)據(jù)庫(kù)直接增加的就是數(shù)據(jù)庫(kù)的負(fù)載壓力。
新版的GetInfoPath等內(nèi)置函數(shù)標(biāo)簽則改進(jìn)為這樣“GetInfoPath(string nodeId, string id, string inputTime, string pinyinTitle)”的形式,它在標(biāo)簽使用過程中是直接把生成地址時(shí)需要的參數(shù)都賦給這個(gè)內(nèi)置函數(shù),這樣就不需要頻繁查詢數(shù)據(jù)庫(kù)了。
舉個(gè)通俗一點(diǎn)的列子來說明一下:假設(shè)我們的網(wǎng)站數(shù)據(jù)庫(kù)中存有10萬條數(shù)據(jù),我們?cè)谇芭_(tái)制作一個(gè)頁面要每頁顯示500條數(shù)據(jù),按照原來的方法,當(dāng)頁面生成后共需要查詢數(shù)據(jù)庫(kù)500次,而使用新版的方法數(shù)據(jù)庫(kù)的查詢操作就變?yōu)榱?font color="#ff0000">0次,也就是不需要再查詢數(shù)據(jù)庫(kù)了。單從數(shù)字的對(duì)比上面不難看出,新版的系統(tǒng)性能和執(zhí)行效率得到了明顯提升!
值得注意的是SiteFactory? CMS1.1版為了兼容以前的內(nèi)置函數(shù)標(biāo)簽,將同時(shí)存在這兩種生成地址的方法。新用戶使用的1.1模板時(shí),直接使用的是提升后的新方法。已經(jīng)在使用SiteFactory? CMS1.0版并且修改過模板的用戶,需要你手動(dòng)修改久的內(nèi)置函數(shù)標(biāo)簽為新的GetInfoPath調(diào)用。如果不修改也不會(huì)出錯(cuò),因?yàn)镾iteFactory? CMS1.1版對(duì)標(biāo)簽有容錯(cuò)性。
附GetInfoPath標(biāo)簽的修改(更多的標(biāo)簽修改將會(huì)在SiteFactory? CMS1.1正式版發(fā)布時(shí)公布):
SiteFactory? 1.0舊版:pe:GetInfoPath(GeneralID)
修改為
SiteFactory? 1.1新版:pe:GetInfoPath(NodeID,GeneralID,InputTime,PinyinTitle)
雖然SiteFactory? CMS開放且自由的標(biāo)簽已經(jīng)讓大家欲罷不能,但在內(nèi)置標(biāo)簽中卻隱藏著極深的性能殺手,如:“GetInfoPath”。即將發(fā)布的SiteFactory? 1.1版將對(duì)這些內(nèi)置函數(shù)標(biāo)簽(GetInfoPath等)進(jìn)行性能優(yōu)化。通過優(yōu)化,系統(tǒng)的前臺(tái)整體性能提升可以至少10%以上,在某些情況下甚至?xí)嵘龓妆兜綆资丁?br>
原來的GetInfoPath(string generalid) 內(nèi)置函數(shù)標(biāo)簽是這樣寫的,標(biāo)簽中在使用內(nèi)置方法獲取信息的地址時(shí),就需要去查詢一次數(shù)據(jù)庫(kù),每一條信息都需要查詢一次數(shù)據(jù)庫(kù),這樣頻繁查詢數(shù)據(jù)庫(kù)直接增加的就是數(shù)據(jù)庫(kù)的負(fù)載壓力。
新版的GetInfoPath等內(nèi)置函數(shù)標(biāo)簽則改進(jìn)為這樣“GetInfoPath(string nodeId, string id, string inputTime, string pinyinTitle)”的形式,它在標(biāo)簽使用過程中是直接把生成地址時(shí)需要的參數(shù)都賦給這個(gè)內(nèi)置函數(shù),這樣就不需要頻繁查詢數(shù)據(jù)庫(kù)了。
舉個(gè)通俗一點(diǎn)的列子來說明一下:假設(shè)我們的網(wǎng)站數(shù)據(jù)庫(kù)中存有10萬條數(shù)據(jù),我們?cè)谇芭_(tái)制作一個(gè)頁面要每頁顯示500條數(shù)據(jù),按照原來的方法,當(dāng)頁面生成后共需要查詢數(shù)據(jù)庫(kù)500次,而使用新版的方法數(shù)據(jù)庫(kù)的查詢操作就變?yōu)榱?font color="#ff0000">0次,也就是不需要再查詢數(shù)據(jù)庫(kù)了。單從數(shù)字的對(duì)比上面不難看出,新版的系統(tǒng)性能和執(zhí)行效率得到了明顯提升!
值得注意的是SiteFactory? CMS1.1版為了兼容以前的內(nèi)置函數(shù)標(biāo)簽,將同時(shí)存在這兩種生成地址的方法。新用戶使用的1.1模板時(shí),直接使用的是提升后的新方法。已經(jīng)在使用SiteFactory? CMS1.0版并且修改過模板的用戶,需要你手動(dòng)修改久的內(nèi)置函數(shù)標(biāo)簽為新的GetInfoPath調(diào)用。如果不修改也不會(huì)出錯(cuò),因?yàn)镾iteFactory? CMS1.1版對(duì)標(biāo)簽有容錯(cuò)性。
附GetInfoPath標(biāo)簽的修改(更多的標(biāo)簽修改將會(huì)在SiteFactory? CMS1.1正式版發(fā)布時(shí)公布):
SiteFactory? 1.0舊版:pe:GetInfoPath(GeneralID)
修改為
SiteFactory? 1.1新版:pe:GetInfoPath(NodeID,GeneralID,InputTime,PinyinTitle)
用戶登錄
還沒有賬號(hào)?
立即注冊(cè)