北大青鳥告訴您ASP.NET偽靜態(tài)的實(shí)現(xiàn)及偽靜態(tài)的意義
一、偽靜態(tài)的用處
有些用戶覺得,偽靜態(tài)和真靜態(tài)實(shí)際被收錄量會相差很大,其實(shí)不然,從你個(gè)人角度,你去判斷一下一個(gè)帖子到底是真靜態(tài)還是偽靜態(tài)?估計(jì)很難看得出,因?yàn)樗^靜態(tài)的意思,就是地址中不帶問號,不帶問號的就是靜態(tài),管他是真的還是偽的?搜索引擎看得出嗎?所以說,其實(shí)不論是真的還是偽的,其實(shí)對于搜索引擎來說都是一樣的,搜索引擎沒有說,你這個(gè)是偽的,我不收錄你。
追根究底來說,為什么搜索引擎會不收錄帶問號的網(wǎng)址?因?yàn)樗阉饕媾掠捎趩柼柖M(jìn)入死循環(huán),稱為"搜索機(jī)器人陷阱(Spidertraps)"(以前動網(wǎng)就有這樣一個(gè)漏洞,蜘蛛進(jìn)去出不來了),所以很多時(shí)候帶問號的地址搜索引擎是不會進(jìn)去的,偽靜態(tài)對于搜索引擎來說,其實(shí)就是靜態(tài),因?yàn)榈刂分袥]有帶問號,所以沒有真靜態(tài)比偽靜態(tài)收錄得多的說法。
二、為什么選擇偽靜態(tài)?
有很多用戶說:真靜態(tài)不好嗎?為什么不用真靜態(tài)?訪問起來不是更快嗎?負(fù)載不是更好嗎?等等等等……
在這里,其實(shí)只用一個(gè)問題來回答:為什么選擇MYSQL?很多用戶大概不明白為什么那么多大型論壇都選擇了MYSQL數(shù)據(jù)庫作為儲存機(jī)制,大概大部分都是想:"因?yàn)镈Z用了MYSQL,所以就是MYSQL".
其實(shí)不然,試想DZ為什么會在那么多論壇程序并存的日子生存下來并笑傲江湖,很大原因是因?yàn)镈Z用了MYSQL.試想如果大C當(dāng)年改的程序是一個(gè)文本論壇,那還會有DZ的今天嗎?或者從另一個(gè)角度問,為什么那么多大型網(wǎng)站都選擇了MYSQL而不是文本作為儲存機(jī)制?
所謂文本論壇,實(shí)際就跟真靜態(tài)的說法差不多了,將數(shù)據(jù)儲存在空間上面,大量讀寫硬盤,等等……
為什么這種寫法會被淘汰呢?我相信答案不會是老師所說的:"Discuz!目前有2129867 篇帖子,存儲成html的話大約是 20799M,也就是 20G左右。這當(dāng)中還不計(jì)算由于磁盤存儲機(jī)制造成的空間浪費(fèi)(100個(gè) 1k的文件占用的空間可能會是200K)。"
這種說法從我個(gè)人觀點(diǎn)來看,這個(gè)理由不能給用戶不使用真靜態(tài)充分的理由。然而,另一個(gè)理由卻是值得我們注意思考的,也是為什么絕大多數(shù)站都不選擇生成靜態(tài):
"刪除、更新這些html內(nèi)容會導(dǎo)致大量的磁盤io操作以及大量的磁盤碎片。"
正如上面的說法,在實(shí)際當(dāng)中確實(shí)會導(dǎo)致大量的磁盤I/O操作(input/output),大量進(jìn)行I/O操作帶來的后果可想而知,會產(chǎn)生大量的磁盤碎片甚至?xí)䦟?dǎo)致硬盤出現(xiàn)壞道。
所以對于生成靜態(tài)而言,還不如去用文本論壇,可以更好的解決你們的需求。(副W就是做文本論壇出生的,當(dāng)時(shí)的名字為ofstar,后因發(fā)展困難轉(zhuǎn)為MYSQL,而PW生成靜態(tài)頁面也就是PW以前文本方式稍加改進(jìn)用于吸引用戶眼球的噘頭)
當(dāng)然,如果大家記憶力好的話,應(yīng)該可以記得PW4的時(shí)候PW論壇不能訪問很長一段時(shí)間,后來恢復(fù)到一段時(shí)間前的數(shù)據(jù),官方的說法是被人攻擊而導(dǎo)致硬盤損壞,其實(shí)這種說法是比較不可信的,相對于是被攻擊導(dǎo)致硬盤損壞還是大量I/O操作而產(chǎn)生的后果,我個(gè)人更傾向于后者。
當(dāng)然,如果大家比較關(guān)注5d6d的話,應(yīng)該知道前幾天有一天時(shí)間5d6d無法訪問,根據(jù)非官方消息是因?yàn)橛脖P壞了,而損壞的原因我想當(dāng)然是因?yàn)榇罅坑脩舸罅窟M(jìn)行I/O操作了,試想,我們一個(gè)論壇,進(jìn)行磁盤I/O操作的僅為管理員進(jìn)行更新緩存時(shí)進(jìn)行的,而5d6d每一個(gè)會員就是一個(gè)管理員,試想下對磁盤是多大的考驗(yàn)?所以我并不奇怪5d6d的硬盤壞了。
當(dāng)然,也許在讀這篇文章的很多朋友都有使用過BT,也聽說過BT對硬盤很傷,不能開多,而所謂傷害,和這里指的都是同一樣?xùn)|西,大量I/O導(dǎo)致磁盤出現(xiàn)碎片甚至出現(xiàn)磁盤壞道。
這里都是說些很實(shí)際的例子來說明問題了。
三、偽靜態(tài)的壞處
當(dāng)然猶如一篇文章的作者所說的:"如果流量稍大一些使用偽靜態(tài)就出現(xiàn)CPU使用超負(fù)荷,我的同時(shí)在線300多人就掛了,而不使用偽靜態(tài)的時(shí)候同時(shí)在線超500人都不掛,我的ISS數(shù)是1000."
確實(shí)是這樣的,由于偽靜態(tài)是用正則判斷而不是真實(shí)地址,分辨到底顯示哪個(gè)頁面的責(zé)任也由直接指定轉(zhuǎn)由CPU來判斷了,所以CPU占有量的上升,確實(shí)是偽靜態(tài)最大的弊病。
四、我們應(yīng)該選擇偽靜態(tài)還是真靜態(tài)?
我們來總結(jié)一下:
1、使用真靜態(tài)和假靜態(tài)對SEO來說沒有什么區(qū)別
2、使用真靜態(tài)可能將導(dǎo)致硬盤損壞并將影響論壇性能
3、使用偽靜態(tài)將占用一定量的CPU占有率,大量使用將導(dǎo)致CPU超負(fù)荷
4、最重要的一點(diǎn),我們要靜態(tài)是為了SEO
所以:
1、使用真靜態(tài)的方法可以直接排除了,因?yàn)闊o論怎么生成,對硬盤來說都是很傷的。
2、既然真?zhèn)戊o態(tài)的效果一樣,我們就可以選擇偽靜態(tài)了。
3、但是偽靜態(tài)大量使用會照成CPU超負(fù)荷。
4、所以我們只要不大量使用就可以了。
5、既然靜態(tài)只是給SEO看的,我們只需要偽靜態(tài)給SEO就行了,不需要給用戶使用。
6、所以我們只要在專門提供給SEO爬的Archiver中使用偽靜態(tài)就可以了。
7、謝謝大家耐心看我寫的文章。
8、有何不解的地方或是有不同的看法歡迎提出。
文章來源 i3061.cn 轉(zhuǎn)載請注明出處!
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對在線咨詢老師進(jìn)行一對一問答!
推薦資訊
- 鄭州北大青鳥可信嗎?... 2019-02-17
- 鄭州北大青鳥翔天信鴿中心2011年... 2012-10-13
- 鄭州電腦學(xué)校:北大青鳥第一批夏... 2012-05-28
- 鄭州北大青鳥證書是什么樣子的?... 2012-10-13
- 鄭州北大青鳥ACCP課程內(nèi)容大綱... 2012-10-13
熱點(diǎn)資訊
- 電腦溫度多少是正常的情況呢?... 2018-09-07
- 四個(gè)策略及簡單的防護(hù)方法... 2018-09-07
- 對硬盤進(jìn)行雙分區(qū)有什么好處... 2018-09-07
- 文件加密的幾個(gè)簡單方法... 2018-09-07
- 計(jì)算機(jī)小技巧,80G硬盤巧變變成... 2018-09-07