前言:一篇好文章的誕生,需要你不斷地搜集資料、整理思路,本站小編為你收集了豐富的工業(yè)互聯(lián)網(wǎng)論文主題范文,僅供參考,歡迎閱讀并收藏。
Abstract: Website optimization, has been to bring attention to a problem, how to provide users build better user experience is the ultimate goal of Web site optimization. The article sets out from practice, mainly in the cache technology, pages compression, storage and availability optimization etc. on website optimization is discussed, and puts forward some reference suggestions.
關(guān)鍵詞:用戶;網(wǎng)站;優(yōu)化
Key Words:Web;Data;Cache;
隨著Internet的不斷發(fā)展,各種新的技術(shù)手段日益的更新,人們接收和處理信息的方式也發(fā)生了巨大的變化,這已經(jīng)成為不爭的事實(shí)。據(jù)中國互聯(lián)網(wǎng)絡(luò)信息中心的《第25次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告》顯示,截止到2009年12月份,中國網(wǎng)民規(guī)模已經(jīng)達(dá)到3.84億人,較上一年增長28.9%,互聯(lián)網(wǎng)普及率在穩(wěn)步上升。在各種網(wǎng)絡(luò)應(yīng)用中,我們可以大致分為四類:信息獲取類;交流溝通類;網(wǎng)絡(luò)娛樂類;商務(wù)交易類。以上應(yīng)用絕大多數(shù)都離不開Web的支持,如何構(gòu)建合適的Web網(wǎng)站,提供更好的用戶體驗(yàn),成為人們更為關(guān)注的熱點(diǎn)問題。筆者以自己參與研究的河南省教育和科研網(wǎng)絡(luò)論壇為例,從用戶的角度出發(fā),提出了在實(shí)踐中發(fā)現(xiàn)的問題,并給出了Web網(wǎng)站優(yōu)化的幾點(diǎn)意見,以供參考。
一、面向Web用戶的需求分析
據(jù)CNNIC提供的數(shù)據(jù)顯示,中國網(wǎng)民繼續(xù)向低學(xué)歷人群滲透。2009年初中及以下網(wǎng)民群體增速超過整體網(wǎng)民增速,占到整體網(wǎng)民的35.6%,高中學(xué)歷網(wǎng)民所占比例略微提升,大專及以上學(xué)歷網(wǎng)民所占比例繼續(xù)降低,網(wǎng)民學(xué)歷結(jié)構(gòu)更為均衡。從職業(yè)結(jié)構(gòu)來看,中國學(xué)生網(wǎng)民群體占比明顯下降,同時(shí)產(chǎn)業(yè)工人、服務(wù)業(yè)從業(yè)者、無業(yè)人員、農(nóng)民群體等網(wǎng)民比重有所提升,越來越多的弱勢群體開始使用互聯(lián)網(wǎng)。
用戶的需求包括功能性需求、性能需求、環(huán)境需求、可靠性需求、安全保密需求、用戶界面需求、資源使用需求等。根據(jù)上文對網(wǎng)民結(jié)構(gòu)所做的分析,從不失一般性的角度出發(fā),我們可以得出Web用戶更關(guān)注功能性需求、性能需求和用戶界面需求,但作為Web服務(wù)的提供者,其他幾種需求也是應(yīng)該考慮到的。功能性需求是指用戶想要得到何種Web服務(wù),這是最主要的需求。性能需求是指用戶應(yīng)該得到滿意的服務(wù)質(zhì)量,包括在不同環(huán)境下得到相同的服務(wù),信息傳遞延遲的要求等。用戶界面需求是指用戶能夠在友好的環(huán)境下方便、有效、愉快地使用所提供的服務(wù),從市場的角度來看,具有友好界面的Web具有很強(qiáng)的市場競爭力。
二、現(xiàn)有環(huán)境及問題分析
河南省教育科研網(wǎng)論壇(bbs.ha.省略)由河南教育科研網(wǎng)網(wǎng)絡(luò)中心和鄭州大學(xué)研究生創(chuàng)新中心于2009年共同創(chuàng)辦,是一個(gè)面向全省的綜合性門戶網(wǎng)站,內(nèi)容涉及大學(xué)師生的工作、學(xué)習(xí)、生活的各個(gè)方面。網(wǎng)站采用IIS6.0作為Web服務(wù)器,以Visual Studio2005作為開發(fā)工具,采用C#語言,以 2.0技術(shù)平臺(tái)來實(shí)現(xiàn)頁面的動(dòng)態(tài)生成,數(shù)據(jù)庫采用SQL Server 2005服務(wù)器。
整體而言,目前的用戶使用網(wǎng)絡(luò)的目的更趨于實(shí)用性,選擇更多,更容易選擇或離開一個(gè)Web站點(diǎn),用戶的耐心幾乎成為一種稀缺資源。如何在用戶可以忍受的范圍內(nèi),將有價(jià)值的信息呈現(xiàn)給用戶,是進(jìn)行網(wǎng)站優(yōu)化的最基本要求。美國一家獨(dú)立調(diào)查公司的調(diào)查結(jié)果顯示,網(wǎng)站必須在10秒之內(nèi)對用戶的訪問做出響應(yīng),否則將流失至少30%的潛在客戶。截止到2010年底,用戶所能容忍的時(shí)間已從10秒縮短至不到3秒。在進(jìn)行網(wǎng)站優(yōu)化之前,我們必須了解以下三個(gè)事實(shí)。1、用戶不閱讀,只掃描。人們只是掃描一下網(wǎng)頁,尋找其中感興趣的內(nèi)容,并點(diǎn)擊他們,對于其他內(nèi)容,毫不關(guān)心。2、用戶不要最佳結(jié)果,滿意即可。一個(gè)網(wǎng)頁可能提供多個(gè)同一類型的鏈接,用戶在掃描的時(shí)候,并不考慮哪個(gè)鏈接能提供最佳的結(jié)果,只是嘗試性的點(diǎn)擊其中一個(gè),如果能夠得到滿意的內(nèi)容,不會(huì)再去點(diǎn)擊其他鏈接,即使點(diǎn)錯(cuò)了,再退回去,并不造成什么損失。3、用戶不探究,只應(yīng)付。人們使用現(xiàn)實(shí)中的某種物品,并不理解他的運(yùn)作原理,而是按照自己的習(xí)慣去使用,比如對于某種電器產(chǎn)品,用戶買回家后,很少去閱讀使用說明,而是按照自己的理解(即使是錯(cuò)誤的)去操作,只要能夠順利完成任務(wù)就萬事大吉,這種應(yīng)付的態(tài)度對于Web的使用也是同樣的。用戶并不按照設(shè)計(jì)師的想法去理解網(wǎng)站的運(yùn)作原理,而是按照自己一貫的,某種有效方法去操作,即使有更好的操作途徑。
三、基于用戶的優(yōu)化技術(shù)
在充分考慮到用戶的感受和Web使用習(xí)慣后,我們可以著手從以下幾個(gè)方面對網(wǎng)站進(jìn)行優(yōu)化。
1、使用緩存技術(shù)
高流量的交互性網(wǎng)站,往往會(huì)面臨一個(gè)難題,就是反復(fù)大數(shù)據(jù)量的操作時(shí),Web應(yīng)用程序的性能很難保證,單純依賴硬件的提升會(huì)直接造成費(fèi)用的攀升。如果我們對經(jīng)常請求且很少變化的數(shù)據(jù)加以緩存,那么就可以緩解這個(gè)難題帶給我們的煩惱。提供了兩類Web應(yīng)用程序緩存:輸出緩存和數(shù)據(jù)緩存。
輸出緩存技術(shù)通過緩存從動(dòng)態(tài)頁生成的內(nèi)容來提高請求/響應(yīng)吞吐量。輸出緩存在默認(rèn)情況下是開啟的,但是除非執(zhí)行顯示操作以使響應(yīng)可以緩存,否則來自任何給定響應(yīng)的輸出都不會(huì)被緩存。頁面的內(nèi)容經(jīng)過頁輸出緩存處理后存儲(chǔ)在內(nèi)存中。當(dāng)用戶再次請求這個(gè)被緩存的頁面時(shí),從內(nèi)存中作出響應(yīng),而不必再次經(jīng)過頁處理生命周期。頁輸出緩存對那些不經(jīng)常更改,但需要大量處理才能創(chuàng)建的頁特別有用??梢詥为?dú)緩存一個(gè)頁面也可以通過配置Web應(yīng)用程序的配置文件緩存多個(gè)頁面。這樣除第一次請求外,后續(xù)請求將直接從緩存中輸出網(wǎng)頁,而無需重新生成頁面,從而節(jié)省了資源,提升了Web應(yīng)用程序的整體性能。需要注意的是,網(wǎng)站緩存大量頁面實(shí)例會(huì)消耗很多的服務(wù)器資源,在有些情況下,網(wǎng)站頁面的大部分區(qū)域是不變的,因此只需要頁的某些部分在請求的時(shí)候更新。為此,我們可以采用部分緩存功能。例如,可以通過創(chuàng)建用戶控件來包含緩存的內(nèi)容,與普通緩存頁一樣加入@OutputCache指令來指定緩存策略,或者在用戶控件后置代碼中使用PartialCachingAttribute類,以聲明的方式為用戶控件設(shè)置設(shè)置這些策略。如一個(gè)BBS網(wǎng)站的大量頁面都包含一個(gè)靜態(tài)公告,其他內(nèi)容均為動(dòng)態(tài)的,這部分靜態(tài)公告就可以放入用戶控件來緩存起來。
數(shù)據(jù)緩存的運(yùn)行機(jī)制是將應(yīng)用程序的數(shù)據(jù)緩存起來,以提高程序的性能。緩存是由Cache對象實(shí)現(xiàn)的,緩存實(shí)力是每個(gè)應(yīng)用程序?qū)S玫摹>彺嫔嬷芷谝蕾囉趹?yīng)用程序的生存期;重新啟動(dòng)應(yīng)用程序之后,將重新創(chuàng)建Cache對象。Cache對象具備過期策略,我們可以通過使用簡單的鍵值對將項(xiàng)防止在Cache中,從而進(jìn)行存取。例如:
Cache類提供了強(qiáng)大的功能,允許自定義如何緩存項(xiàng),以及將其緩存多長時(shí)間。例如,應(yīng)用程序運(yùn)行中,服務(wù)器缺乏內(nèi)存時(shí),緩存會(huì)自動(dòng)移除優(yōu)先級較低的或很少使用的項(xiàng)以釋放內(nèi)存。這是緩存確保過期數(shù)據(jù)不適用寶貴服務(wù)器資源的方法之一。
2、使用頁面壓縮技術(shù)
對于一個(gè)HTTP請求,如果給予更少的應(yīng)答內(nèi)容,那么在服務(wù)器和客戶端之間的傳輸時(shí)間將因?yàn)閿?shù)據(jù)包的減少而減少,對于帶寬較低的網(wǎng)絡(luò)效果則更加明顯。對腳本和樣式表進(jìn)行壓縮是減少網(wǎng)頁容量的最簡單方法。GZIP最早由Jean-loup Gailly和Mark Adler創(chuàng)建,被用于于UNIX系統(tǒng)文件的壓縮,目前已經(jīng)成為Internet上非常普遍使用的數(shù)據(jù)壓縮技術(shù)。大部分的Web服務(wù)器和瀏覽器都支持Gzip壓縮。在服務(wù)器上的頁面在傳輸之前,先使用Gzip壓縮再傳輸給客戶端,客戶端接收之后由瀏覽器解壓顯示,這樣一來帶寬利用率被大幅度提高。對于純文本的網(wǎng)頁,壓縮率是相當(dāng)可觀的。假如每個(gè)用戶節(jié)約50%的帶寬,那么網(wǎng)站租用來的那些帶寬就可以服務(wù)多一倍的客戶。但是,PDF文件和圖片就不應(yīng)該進(jìn)行壓縮,因?yàn)樗鼈儽旧硪呀?jīng)被壓縮過了。雖然采用壓縮和解壓技術(shù)會(huì)帶來一定的CPU負(fù)擔(dān),不過比起發(fā)送和傳輸時(shí)延的大幅減少所帶來的收益,還是值得的。
3、使用存儲(chǔ)過程
存儲(chǔ)過程是存儲(chǔ)在服務(wù)器上的一組預(yù)編譯的SQL語句。在后臺(tái)數(shù)據(jù)庫的優(yōu)化中,我們可以將部分常用的數(shù)據(jù)庫訪問操作封裝為存儲(chǔ)過程,這樣做可以帶來以下好處。首先,封裝了基本事物,從而使數(shù)據(jù)庫訪問接口更加清晰、簡潔,層次也更為合理。其次,存儲(chǔ)過程可以提高數(shù)據(jù)庫訪問的性能,減少網(wǎng)絡(luò)訪問的數(shù)據(jù)交換。存儲(chǔ)過程將相關(guān)事物封裝起來,不僅符合數(shù)據(jù)庫訪問按事物進(jìn)行的要求,而且可以將存儲(chǔ)過程的訪問結(jié)果進(jìn)行緩存,從而提高訪問性能。此外存儲(chǔ)過程相當(dāng)于函數(shù),在使用時(shí)只需傳輸存儲(chǔ)過程名、參數(shù)和參數(shù)的數(shù)值等數(shù)據(jù),無需編寫復(fù)雜的SQL語句,因此可以減少網(wǎng)絡(luò)流量。再次,對于程序設(shè)計(jì)而言,存儲(chǔ)過程可以簡化編碼,并有利于系統(tǒng)修改。存儲(chǔ)過程封裝了基本事物,這樣可以增加代碼的復(fù)用性、共享性和結(jié)構(gòu)化,從而加快開發(fā)速度。此外,利用存儲(chǔ)過程可以有效的減少在頁面中分散的SQL語句的訪問,有利于系統(tǒng)修改。如果需要修改數(shù)據(jù)庫的邏輯結(jié)構(gòu),只需更新相關(guān)存儲(chǔ)過程即可,對頁面可以實(shí)現(xiàn)很好的封裝和隔離,不必大規(guī)模修改頁面。
4、可用性優(yōu)化
Web界面優(yōu)化是網(wǎng)站優(yōu)化的一種延伸,是人機(jī)交互方式的演變。
①搜索引擎優(yōu)化?,F(xiàn)在的用戶使用互聯(lián)網(wǎng)尋求問題的答案時(shí),總是首先想到求助于搜索引擎,但幾乎從不看除第一頁之外的搜索結(jié)果,因此搜索引擎優(yōu)化就成為一個(gè)Web的重要內(nèi)容。我們首先來看一下幾個(gè)網(wǎng)絡(luò)社區(qū)的首頁標(biāo)題。
搜索引擎往往會(huì)給予出現(xiàn)在頁面標(biāo)題中的單詞更多的權(quán)重,而用戶在瀏覽搜索結(jié)果列表時(shí),通常會(huì)根據(jù)標(biāo)題的內(nèi)容來判斷該網(wǎng)站所提供的內(nèi)容。例如,新浪論壇首頁標(biāo)題中出現(xiàn)的“全球最大中文社區(qū)”,愛卡汽車論壇首頁出現(xiàn)的“汽車論壇_汽車社區(qū)_愛卡汽車論壇|車友會(huì)_愛卡汽車網(wǎng)”等內(nèi)容,很容易使搜索引擎,按照用戶所提供的關(guān)鍵詞搜索到該網(wǎng)站,也便于用戶識(shí)別該網(wǎng)站所提供的內(nèi)容,從而提高網(wǎng)站點(diǎn)擊率。而河南省教育科研網(wǎng)論壇的首頁標(biāo)題就顯得過于蒼白,不妨改為“河南省教育科研網(wǎng)論壇_大學(xué)生自己的網(wǎng)上家園”。
②信息表現(xiàn)優(yōu)化。首先應(yīng)該為頁面建立清晰的視覺層次,而且能夠準(zhǔn)確的描述頁面內(nèi)容間的關(guān)系:哪些內(nèi)容相關(guān),哪些內(nèi)容是其他內(nèi)容的嵌套。其中包括突出重要部分,可將重要內(nèi)容以加粗傾斜的方式,或者用比較強(qiáng)烈的顏色進(jìn)行顯示;使邏輯上相關(guān)的部分在邏輯上也相關(guān),例如可以把內(nèi)容相關(guān)的部分放在一組或同一個(gè)標(biāo)題下。
③采用人們熟悉的界面。
對比上面的圖1和圖2為的登錄界面,除了必要的用戶名、密碼輸入框、登錄按鈕、新用戶注冊和忘記密碼的服務(wù)外,大河論壇還提供了站內(nèi)搜索的功能。兩個(gè)網(wǎng)站最大的不同在于,“幫助文檔”的呈現(xiàn)方式。圖1中的“BBS管理制度”,對普通用戶來說幾乎沒有任何作用,更不會(huì)花費(fèi)時(shí)間去閱讀。但是用戶在使用網(wǎng)站出現(xiàn)問題時(shí),通常會(huì)去點(diǎn)擊如圖2中的“幫助中心”,并查詢問題的解答。對于注重實(shí)用性需求的交互式網(wǎng)站而言,除非有一個(gè)更好的實(shí)用的創(chuàng)新,否則盡可能的采用人們習(xí)慣的界面。
④讓內(nèi)容易于掃描。現(xiàn)在的用戶在非必要的情況下,不會(huì)去閱讀整段的文字,因?yàn)槟且馕吨?,他們要從許多大段的文字中,尋找有用的信息,而這樣做的效率是比較低的。一個(gè)比較好的做法是,控制網(wǎng)頁中的文字性內(nèi)容,使用戶能夠從簡短的語句甚至單詞的描述中,找到有價(jià)值的信息。比如,控制用戶帖子標(biāo)題和內(nèi)容的字符長度。
四、總結(jié)
在交互式網(wǎng)站的優(yōu)化中,諸如動(dòng)態(tài)頁面靜態(tài)化,合理的選擇控件,對用戶個(gè)性化信息進(jìn)行控制等方法也是可以采用的,但要考慮到網(wǎng)站的具體運(yùn)行情況和所面向用戶的使用習(xí)慣問題。無論如何,只有在實(shí)踐中加以探索,才能達(dá)到更好的效果。
參考文獻(xiàn):
[1] 中國互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)第25次中國互聯(lián)網(wǎng)絡(luò)發(fā)展?fàn)顩r統(tǒng)計(jì)報(bào)告.省略.2010.
[2] 劉婕 張琳. 2.0+SQL Server動(dòng)態(tài)網(wǎng)站開發(fā)從基礎(chǔ)到實(shí)踐[M].北京:電子工業(yè)出版社,2007.
[3] 張海藩 倪寧.軟件工程(第三版)[M].北京:人民郵電出版社,2010.
[4] 董建民,傅立民,Gravriel Salvendy.人機(jī)交互:以用戶為中心的設(shè)計(jì)
和評估[M].北京:清華大學(xué)出版社,2003.
[5] 魏璞.Web優(yōu)化的研究及其應(yīng)用[J].北京郵電大學(xué)工程碩士研究生學(xué)位論文,2008.省略
第2作者:段向東(出生1980年), 性別:男(漢族), 河南省鄭州市,職稱:助教,學(xué)位:工學(xué)碩士,研究方向:單片機(jī)技術(shù)及應(yīng)用