專(zhuān)利名稱(chēng):一種更新動(dòng)態(tài)網(wǎng)頁(yè)的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信領(lǐng)域,更具體地說(shuō),涉及一種更新動(dòng)態(tài)網(wǎng)頁(yè)的方法及系統(tǒng)。
背景技術(shù):
在目前的網(wǎng)站設(shè)計(jì)中,最為普遍的就是靜態(tài)網(wǎng)頁(yè)和動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),本發(fā)明主要涉及后者。
所謂靜態(tài)網(wǎng)頁(yè)技術(shù),是為每種語(yǔ)言分別準(zhǔn)備一套頁(yè)面文件,通過(guò)文件后綴名或子目錄來(lái)區(qū)分不同語(yǔ)言,早期的網(wǎng)站一般都是由靜態(tài)網(wǎng)頁(yè)制作而成。采用靜態(tài)網(wǎng)頁(yè)的優(yōu)點(diǎn)是頁(yè)面可直接輸出到客戶(hù)端,不需在服務(wù)器上運(yùn)行,占用服務(wù)器的資源比較少,系統(tǒng)能夠支持的并發(fā)連接數(shù)較多,但是要為每種語(yǔ)言制作一套頁(yè)面文件,很多內(nèi)容即使和語(yǔ)言無(wú)關(guān)也要分不同語(yǔ)言來(lái)存儲(chǔ),因此占用的存儲(chǔ)空間較多。
而動(dòng)態(tài)網(wǎng)頁(yè)技術(shù),是站點(diǎn)內(nèi)所有頁(yè)面文件都為動(dòng)態(tài)網(wǎng)頁(yè),在需要輸出語(yǔ)言文字的地方統(tǒng)一采用語(yǔ)言變量來(lái)表示,這些語(yǔ)言變量可根據(jù)用戶(hù)選擇不同的語(yǔ)言賦予不同的值,從而實(shí)現(xiàn)在不同的語(yǔ)言環(huán)境下輸出不同的文字。由于動(dòng)態(tài)網(wǎng)頁(yè)只需一套,不同語(yǔ)言的文字使用語(yǔ)言變量來(lái)存儲(chǔ),和語(yǔ)言無(wú)關(guān)的內(nèi)容只存儲(chǔ)一即可,因此占用的存儲(chǔ)空間較少,且擴(kuò)展新語(yǔ)言比較容易,但其缺點(diǎn)在于需要在服務(wù)器上運(yùn)行,然后把結(jié)果輸入到客戶(hù)端,因此占用服務(wù)器的資源比較多,對(duì)用戶(hù)的網(wǎng)頁(yè)更新請(qǐng)求的響應(yīng)比較慢,而且系統(tǒng)能夠支持的并發(fā)連接數(shù)較少。
因此需要一種方法,能夠增強(qiáng)對(duì)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的響應(yīng)效率,從而實(shí)現(xiàn)在多語(yǔ)言環(huán)境下快速交互網(wǎng)頁(yè)。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),旨在解決現(xiàn)有技術(shù)對(duì)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的響應(yīng)效率低下的問(wèn)題。
本發(fā)明的目的還在于提供一種更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,以更好地解決現(xiàn)有技術(shù)中存在的上述問(wèn)題。
為了實(shí)現(xiàn)發(fā)明目的,所述更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng)包括服務(wù)器和客戶(hù)端,所述客戶(hù)端包括顯示模塊和收發(fā)模塊,所述客戶(hù)端還包括客戶(hù)端更新處理模塊和預(yù)存取模塊;所述預(yù)存取模塊與所述客戶(hù)端更新處理模塊相連,用于對(duì)動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行有針對(duì)性的選取,并存儲(chǔ)為預(yù)存取數(shù)據(jù),供所述客戶(hù)端更新處理模塊提?。凰隹蛻?hù)端更新處理模塊與所述顯示模塊、收發(fā)模塊和預(yù)存取模塊相連,用于對(duì)用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求進(jìn)行分析,并檢測(cè)所述預(yù)存取模塊中是否存在滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則從所述預(yù)存取模塊中提取所述預(yù)存取數(shù)據(jù)并送入所述顯示模塊對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新,若不存在則根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求并由收發(fā)模塊發(fā)送至服務(wù)器。
所述預(yù)存取模塊對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行有針對(duì)性的選取和存儲(chǔ)的機(jī)制是所述預(yù)存取模塊中建有一個(gè)統(tǒng)計(jì)模型,所述統(tǒng)計(jì)模型用于統(tǒng)計(jì)用戶(hù)發(fā)送的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的經(jīng)驗(yàn)數(shù)據(jù),并根據(jù)所述經(jīng)驗(yàn)數(shù)據(jù)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,對(duì)預(yù)存取數(shù)據(jù)進(jìn)行有針對(duì)性的選取和存儲(chǔ)。
所述客戶(hù)端更新處理模塊進(jìn)一步用于,當(dāng)完成對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的更新后,判斷所述預(yù)存取模塊中的數(shù)據(jù)是否需要更新,如需更新則構(gòu)造一個(gè)預(yù)存取數(shù)據(jù)更新請(qǐng)求,并發(fā)送給所述服務(wù)器。
所述服務(wù)器進(jìn)一步包括收發(fā)模塊、服務(wù)器更新處理模塊和數(shù)據(jù)庫(kù);所述收發(fā)模塊用于接收客戶(hù)端根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造的Ajax異步請(qǐng)求;所述服務(wù)器更新處理模塊與所述收發(fā)模塊相連,用于調(diào)用通用網(wǎng)關(guān)接口程序?qū)λ鰟?dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求進(jìn)行處理,并從所述數(shù)據(jù)庫(kù)中提取能滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的數(shù)據(jù);所述數(shù)據(jù)庫(kù)與所述服務(wù)器更新處理模塊相連,用于對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行存儲(chǔ),供所述服務(wù)器更新處理模塊的提取。
所述服務(wù)器更新處理模塊進(jìn)一步用于,調(diào)用通用網(wǎng)關(guān)接口程序?qū)λ隹蛻?hù)端發(fā)送的上傳請(qǐng)求進(jìn)行處理,利用所述客戶(hù)端上傳的個(gè)人更新數(shù)據(jù),對(duì)所述數(shù)據(jù)庫(kù)中存儲(chǔ)的動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行更新。
為了更好地實(shí)現(xiàn)發(fā)明目的,所述更新動(dòng)態(tài)網(wǎng)頁(yè)的方法包括以下步驟A.當(dāng)客戶(hù)端接收到用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,則檢測(cè)所述客戶(hù)端中是否存在滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則轉(zhuǎn)步驟B,若不存在則轉(zhuǎn)步驟C;B.從所述客戶(hù)端中提取所述預(yù)存取數(shù)據(jù),對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新;C.將所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求發(fā)送至服務(wù)器,當(dāng)收到所述服務(wù)器返回的相應(yīng)數(shù)據(jù)后,對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。
所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求是由用戶(hù)根據(jù)客戶(hù)端當(dāng)前的語(yǔ)言環(huán)境和字符集所發(fā)出的。
所述步驟A之前包括一個(gè)在所述客戶(hù)端中對(duì)預(yù)存取數(shù)據(jù)進(jìn)行選取和存儲(chǔ)的過(guò)程,包括在所述客戶(hù)端中建立一個(gè)統(tǒng)計(jì)模型,根據(jù)所述統(tǒng)計(jì)模型得到的用戶(hù)請(qǐng)求經(jīng)驗(yàn)數(shù)據(jù)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,并進(jìn)一步根據(jù)所述推測(cè)對(duì)預(yù)存取數(shù)據(jù)進(jìn)行針對(duì)性的選取和存儲(chǔ)。
所述步驟C進(jìn)一步包括C1.根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求,并將其發(fā)送至服務(wù)器中;C2.所述服務(wù)器處理所述Ajax異步請(qǐng)求,并從其數(shù)據(jù)庫(kù)中提取相應(yīng)數(shù)據(jù)發(fā)送給客戶(hù)端,對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。
所述步驟B或C之后進(jìn)一步包括D.向服務(wù)器發(fā)送一個(gè)本地預(yù)存取數(shù)據(jù)更新請(qǐng)求,并根據(jù)服務(wù)器返回的相應(yīng)數(shù)據(jù)對(duì)所述客戶(hù)端中存儲(chǔ)的預(yù)存取數(shù)據(jù)進(jìn)行更新。
本發(fā)明通過(guò)在客戶(hù)端中預(yù)先存儲(chǔ)動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù),則當(dāng)用戶(hù)發(fā)送一個(gè)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求時(shí),可直接提取并發(fā)送給客戶(hù)端進(jìn)行動(dòng)態(tài)網(wǎng)頁(yè)的更新,極大地提高了請(qǐng)求響應(yīng)效率,增強(qiáng)了用戶(hù)體驗(yàn)。
圖1是本發(fā)明中更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng)結(jié)構(gòu)圖;圖2是本發(fā)明中更新動(dòng)態(tài)網(wǎng)頁(yè)的方法流程圖。
具體實(shí)施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明在客戶(hù)端中設(shè)置一個(gè)客戶(hù)端更新處理模塊和預(yù)存取模塊,該預(yù)存取模塊通過(guò)統(tǒng)計(jì)模型得到的經(jīng)驗(yàn)數(shù)據(jù)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,從而對(duì)用戶(hù)請(qǐng)求所需的預(yù)存取數(shù)據(jù)進(jìn)行有針對(duì)性的選取和存儲(chǔ);當(dāng)用戶(hù)發(fā)送一個(gè)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求時(shí),通過(guò)客戶(hù)端更新處理模塊對(duì)該請(qǐng)求進(jìn)行分析并對(duì)預(yù)存取模塊中的數(shù)據(jù)進(jìn)行檢測(cè),若檢測(cè)到預(yù)存取模塊中存在滿(mǎn)足此請(qǐng)求的數(shù)據(jù),則從預(yù)存取模塊中提取并進(jìn)行網(wǎng)頁(yè)更新。本發(fā)明所采取的動(dòng)態(tài)網(wǎng)頁(yè)更新方式可極大地提高請(qǐng)求響應(yīng)效率,增強(qiáng)用戶(hù)體驗(yàn)。
圖1示出了本發(fā)明中更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng)結(jié)構(gòu),包括服務(wù)器100和客戶(hù)端200。
服務(wù)器100包括收發(fā)模塊101、服務(wù)器更新處理模塊102和數(shù)據(jù)庫(kù)103,其中(1)收發(fā)模塊101接收客戶(hù)端200發(fā)送的各種更新請(qǐng)求,包括下載性質(zhì)的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,以及上傳性質(zhì)的上傳更新請(qǐng)求,在本發(fā)明中主要涉及的是前者。對(duì)于下載性質(zhì)的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,在本發(fā)明中客戶(hù)端200往往根據(jù)該動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造出一個(gè)Ajax異步請(qǐng)求再發(fā)送到服務(wù)器100中,由服務(wù)器更新處理模塊102對(duì)該Ajax異步請(qǐng)求進(jìn)行處理后,再利用收發(fā)模塊101將相應(yīng)的數(shù)據(jù)返回給客戶(hù)端200;對(duì)于上傳性質(zhì)的上傳更新請(qǐng)求,則將該上傳更新請(qǐng)求及與其對(duì)應(yīng)的用戶(hù)上傳的個(gè)人更新數(shù)據(jù)轉(zhuǎn)發(fā)到服務(wù)器更新處理模塊102中進(jìn)行處理。
(2)服務(wù)器更新處理模塊102與收發(fā)模塊101相連,接收收發(fā)模塊101轉(zhuǎn)發(fā)的各種更新請(qǐng)求及相應(yīng)的數(shù)據(jù),并調(diào)用相應(yīng)的通用網(wǎng)關(guān)接口(Common GatewayInterface,CGI)程序,與數(shù)據(jù)庫(kù)103協(xié)作對(duì)這些更新請(qǐng)求分別進(jìn)行處理A.當(dāng)客戶(hù)端200發(fā)送的更新請(qǐng)求的性質(zhì)屬于下載性質(zhì)(例如,對(duì)用戶(hù)在客戶(hù)端200中當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新的請(qǐng)求),則調(diào)用CGI程序從數(shù)據(jù)庫(kù)103中提取該請(qǐng)求所需數(shù)據(jù),并交由收發(fā)模塊101發(fā)送給客戶(hù)端200進(jìn)行更新;B.當(dāng)客戶(hù)端200發(fā)送的請(qǐng)求屬于上傳性質(zhì)時(shí),利用用戶(hù)上傳的個(gè)人更新數(shù)據(jù),對(duì)數(shù)據(jù)庫(kù)103中存儲(chǔ)的網(wǎng)頁(yè)數(shù)據(jù)進(jìn)行更新。
(3)數(shù)據(jù)庫(kù)103對(duì)動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行存儲(chǔ),供服務(wù)器更新處理模塊102在對(duì)客戶(hù)端200的更新請(qǐng)求進(jìn)行處理時(shí)的提取。
客戶(hù)端200包括顯示模塊201、客戶(hù)端更新處理模塊202、預(yù)存取模塊203和收發(fā)模塊204,其中(1)顯示模塊201用于在用戶(hù)界面(User Interface,UI)上顯示網(wǎng)頁(yè)(本發(fā)明主要涉及動(dòng)態(tài)網(wǎng)頁(yè)),并由用戶(hù)基于該顯示模塊201的顯示發(fā)送動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,最終將更新后的動(dòng)態(tài)網(wǎng)頁(yè)再次顯示給用戶(hù)。
(2)客戶(hù)端更新處理模塊202與顯示模塊201、預(yù)存取模塊203以及收發(fā)模塊204相連,用于接收用戶(hù)向應(yīng)用程序(即動(dòng)態(tài)網(wǎng)頁(yè))發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,對(duì)該網(wǎng)頁(yè)更新請(qǐng)求進(jìn)行分析(例如,確定該請(qǐng)求的類(lèi)型和內(nèi)容),并檢測(cè)預(yù)存取模塊203中有無(wú)滿(mǎn)足此請(qǐng)求的數(shù)據(jù);如有,則從預(yù)存取模塊203中提取預(yù)存取數(shù)據(jù)并發(fā)送給顯示模塊201進(jìn)行更新;如沒(méi)有,則根據(jù)前述的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求,由收發(fā)模塊204(典型的,可為Ajax模塊)向服務(wù)器100發(fā)送該請(qǐng)求;最終當(dāng)完成動(dòng)態(tài)網(wǎng)頁(yè)更新處理之后,還可進(jìn)一步構(gòu)造一個(gè)對(duì)預(yù)存取數(shù)據(jù)進(jìn)行更新的Ajax異步請(qǐng)求,并發(fā)送給服務(wù)器100,對(duì)預(yù)存取模塊203中的預(yù)存取數(shù)據(jù)進(jìn)行更新。
(3)預(yù)存取模塊203與客戶(hù)端更新處理模塊202相連,用于存儲(chǔ)預(yù)存取數(shù)據(jù)。該預(yù)存取模塊203中建立有一個(gè)統(tǒng)計(jì)模型,利用該統(tǒng)計(jì)模型得到的經(jīng)驗(yàn)數(shù)據(jù)來(lái)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,從而對(duì)預(yù)存取數(shù)據(jù)(即,滿(mǎn)足該動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求所需的數(shù)據(jù)及數(shù)據(jù)索引)進(jìn)行有針對(duì)性的選取和存儲(chǔ)。
(4)收發(fā)模塊204用于向服務(wù)器100發(fā)送前述的Ajax異步請(qǐng)求,以及接收服務(wù)器100返回的滿(mǎn)足該Ajax異步請(qǐng)求所需的數(shù)據(jù),并將這些數(shù)據(jù)發(fā)送到顯示模塊201對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。
圖2示出了本發(fā)明中更新動(dòng)態(tài)網(wǎng)頁(yè)的方法流程。
在執(zhí)行所有步驟之前,執(zhí)行一個(gè)在客戶(hù)端200的預(yù)存取模塊203中對(duì)預(yù)存取數(shù)據(jù)進(jìn)行選取和存儲(chǔ)的操作,本發(fā)明在預(yù)存取模塊203中建立一個(gè)統(tǒng)計(jì)模型,根據(jù)該統(tǒng)計(jì)模型得到的用戶(hù)請(qǐng)求經(jīng)驗(yàn)數(shù)據(jù),推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,并進(jìn)一步根據(jù)該推測(cè)對(duì)預(yù)存取數(shù)據(jù)進(jìn)行針對(duì)性的選取和存儲(chǔ)。
在步驟S201中,顯示模塊201中顯示有用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè),用戶(hù)根據(jù)客戶(hù)端200的當(dāng)前語(yǔ)言環(huán)境和字符集,發(fā)起一個(gè)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求。
在步驟S202中,當(dāng)客戶(hù)端200中的客戶(hù)端更新請(qǐng)求模塊202收到該動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求時(shí),首先檢測(cè)客戶(hù)端200的預(yù)存取模塊203中是否存在滿(mǎn)足該動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則轉(zhuǎn)步驟S203,若不存在則轉(zhuǎn)步驟S204。
在步驟S203中,客戶(hù)端更新請(qǐng)求模塊202從預(yù)存取模塊203中提取能滿(mǎn)足該動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),并將該預(yù)存取數(shù)據(jù)發(fā)送到顯示模塊201,對(duì)UI中用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新,步驟S203之后則轉(zhuǎn)為執(zhí)行步驟S206。
在步驟S204中,客戶(hù)端更新請(qǐng)求模塊202根據(jù)前述的網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求,并將該Ajax異步請(qǐng)求通過(guò)收發(fā)模塊204發(fā)送至服務(wù)器100中。在本發(fā)明中,用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求與該Ajax異步請(qǐng)求有所區(qū)別用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求只是用戶(hù)與應(yīng)用程序即網(wǎng)頁(yè)之間的交互,此階段可確定該請(qǐng)求的類(lèi)型與內(nèi)容,但此時(shí)應(yīng)用程序即網(wǎng)頁(yè)并沒(méi)有向服務(wù)器100發(fā)送請(qǐng)求;Ajax異步請(qǐng)求才是網(wǎng)頁(yè)與服務(wù)器100之間的實(shí)際的請(qǐng)求,應(yīng)用程序?qū)⒂脩?hù)發(fā)起的請(qǐng)求經(jīng)過(guò)簡(jiǎn)單的封裝處理后,組合成Ajax異步請(qǐng)求所規(guī)定的格式,然后由收發(fā)模塊204(本發(fā)明中典型可為一個(gè)Ajax模塊)向服務(wù)器100發(fā)起http Request請(qǐng)求,當(dāng)服務(wù)器100收到這個(gè)請(qǐng)求后,就會(huì)調(diào)用相應(yīng)的CGI程序?qū)ζ溥M(jìn)行處理。
在步驟S205中,服務(wù)器100的收發(fā)模塊101接收到該Ajax異步請(qǐng)求后,將其送入服務(wù)器更新處理模塊102中,服務(wù)器更新處理模塊102調(diào)用相應(yīng)的CGI程序?qū)ζ溥M(jìn)行處理,并從數(shù)據(jù)庫(kù)103中提取相應(yīng)數(shù)據(jù)給客戶(hù)端200,從而更新用戶(hù)瀏覽的當(dāng)前動(dòng)態(tài)網(wǎng)頁(yè)。關(guān)于步驟S204和S205的具體實(shí)現(xiàn)過(guò)程,可參考現(xiàn)有技術(shù)的內(nèi)容。
本發(fā)明在S203結(jié)束,或者S205結(jié)合時(shí),已經(jīng)成功的完成了對(duì)動(dòng)態(tài)網(wǎng)頁(yè)的更新。此時(shí),預(yù)存取模塊203中的的預(yù)存取數(shù)據(jù)有可能仍然是預(yù)存取數(shù)據(jù),也有可能已經(jīng)失去了預(yù)存取的意義,需要對(duì)其進(jìn)行更新。因此,本發(fā)明還可包括以下步驟,對(duì)客戶(hù)端200的預(yù)存取模塊203進(jìn)行維護(hù)和更新在步驟S206中,預(yù)存取模塊203利用其中的統(tǒng)計(jì)模型(如前所述)來(lái)確定下一次預(yù)存取數(shù)據(jù),并判斷當(dāng)前的預(yù)存取數(shù)據(jù)是否需更新如需要更新則轉(zhuǎn)步驟S207,如不需更新則結(jié)束。
在步驟S207中,當(dāng)確定當(dāng)前的預(yù)存取數(shù)據(jù)需更新,則客戶(hù)端更新處理模塊202構(gòu)造一個(gè)對(duì)本地預(yù)存取數(shù)據(jù)進(jìn)行更新的Ajax異步請(qǐng)求,由收發(fā)模塊204(本發(fā)明中典型的可為Ajax模塊)向服務(wù)器100發(fā)送預(yù)存取數(shù)據(jù)請(qǐng)求。
在步驟S208中,服務(wù)器100利用其服務(wù)器更新請(qǐng)求模塊102處理該Ajax異步請(qǐng)求,并從數(shù)據(jù)庫(kù)103中提取相應(yīng)數(shù)據(jù)返回給客戶(hù)端200。客戶(hù)端200的收發(fā)模塊201在收到服務(wù)器100返回的這些數(shù)據(jù)后,由預(yù)存取模塊203對(duì)本地預(yù)存取數(shù)據(jù)進(jìn)行更新。
應(yīng)當(dāng)說(shuō)明的是,本發(fā)明典型的應(yīng)用但并不限于多語(yǔ)言的動(dòng)態(tài)網(wǎng)頁(yè),在對(duì)一般意義上的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新時(shí)也可以采取本發(fā)明所提供的上述方法。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),包括服務(wù)器和客戶(hù)端,所述客戶(hù)端包括顯示模塊和收發(fā)模塊,其特征在于,所述客戶(hù)端還包括客戶(hù)端更新處理模塊和預(yù)存取模塊;所述預(yù)存取模塊與所述客戶(hù)端更新處理模塊相連,用于對(duì)動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行有針對(duì)性的選取,并存儲(chǔ)為預(yù)存取數(shù)據(jù),供所述客戶(hù)端更新處理模塊提??;所述客戶(hù)端更新處理模塊與所述顯示模塊、收發(fā)模塊和預(yù)存取模塊相連,用于對(duì)用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求進(jìn)行分析,并檢測(cè)所述預(yù)存取模塊中是否存在滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則從所述預(yù)存取模塊中提取所述預(yù)存取數(shù)據(jù)并送入所述顯示模塊對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新,若不存在則根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求并由收發(fā)模塊發(fā)送至服務(wù)器。
2.根據(jù)權(quán)利要求1所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),其特征在于,所述預(yù)存取模塊對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行有針對(duì)性的選取和存儲(chǔ)的機(jī)制是所述預(yù)存取模塊中建有一個(gè)統(tǒng)計(jì)模型,所述統(tǒng)計(jì)模型用于統(tǒng)計(jì)用戶(hù)發(fā)送的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的經(jīng)驗(yàn)數(shù)據(jù),并根據(jù)所述經(jīng)驗(yàn)數(shù)據(jù)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,從而根據(jù)所述推測(cè)對(duì)預(yù)存取數(shù)據(jù)進(jìn)行有針對(duì)性的選取和存儲(chǔ)。
3.根據(jù)權(quán)利要求1所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),其特征在于,所述客戶(hù)端更新處理模塊進(jìn)一步用于,當(dāng)完成對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的更新后,判斷所述預(yù)存取模塊中的數(shù)據(jù)是否需要更新,如需更新則構(gòu)造一個(gè)預(yù)存取數(shù)據(jù)更新請(qǐng)求,并發(fā)送給所述服務(wù)器。
4.根據(jù)權(quán)利要求1所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),其特征在于,所述服務(wù)器進(jìn)一步包括收發(fā)模塊、服務(wù)器更新處理模塊和數(shù)據(jù)庫(kù);所述收發(fā)模塊用于接收客戶(hù)端根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造的Ajax異步請(qǐng)求;所述服務(wù)器更新處理模塊與所述收發(fā)模塊相連,用于調(diào)用通用網(wǎng)關(guān)接口程序?qū)λ鯝jax異步請(qǐng)求進(jìn)行處理,并從所述數(shù)據(jù)庫(kù)中提取能滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的數(shù)據(jù);所述數(shù)據(jù)庫(kù)與所述服務(wù)器更新處理模塊相連,用于對(duì)所述動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行存儲(chǔ),供所述服務(wù)器更新處理模塊的提取。
5.根據(jù)權(quán)利要求4所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的系統(tǒng),其特征在于,所述服務(wù)器更新處理模塊進(jìn)一步用于,調(diào)用通用網(wǎng)關(guān)接口程序?qū)λ隹蛻?hù)端發(fā)送的上傳請(qǐng)求進(jìn)行處理,利用所述客戶(hù)端上傳的個(gè)人更新數(shù)據(jù),對(duì)所述數(shù)據(jù)庫(kù)中存儲(chǔ)的動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù)進(jìn)行更新。
6.一種更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述方法包括以下步驟A.當(dāng)客戶(hù)端接收到用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,則檢測(cè)所述客戶(hù)端中是否存在滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則轉(zhuǎn)步驟B,若不存在則轉(zhuǎn)步驟C;B.從所述客戶(hù)端中提取所述預(yù)存取數(shù)據(jù),對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新;C.將所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求發(fā)送至服務(wù)器,當(dāng)收到所述服務(wù)器返回的相應(yīng)數(shù)據(jù)后,對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。
7.根據(jù)權(quán)利要求6所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求是由用戶(hù)根據(jù)客戶(hù)端當(dāng)前的語(yǔ)言環(huán)境和字符集所發(fā)出的。
8.根據(jù)權(quán)利要求6所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述步驟A之前包括一個(gè)在所述客戶(hù)端中對(duì)預(yù)存取數(shù)據(jù)進(jìn)行選取和存儲(chǔ)的過(guò)程,包括在所述客戶(hù)端中建立一個(gè)統(tǒng)計(jì)模型,根據(jù)所述統(tǒng)計(jì)模型得到的用戶(hù)請(qǐng)求經(jīng)驗(yàn)數(shù)據(jù)推測(cè)用戶(hù)下一步可能發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,并進(jìn)一步根據(jù)所述推測(cè)對(duì)預(yù)存取數(shù)據(jù)進(jìn)行針對(duì)性的選取和存儲(chǔ)。
9.根據(jù)權(quán)利要求6所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述步驟C進(jìn)一步包括C1.根據(jù)所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求構(gòu)造一個(gè)Ajax異步請(qǐng)求,并將其發(fā)送至服務(wù)器中;C2.所述服務(wù)器處理所述Ajax異步請(qǐng)求,并從其數(shù)據(jù)庫(kù)中提取相應(yīng)數(shù)據(jù)發(fā)送給客戶(hù)端,對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。
10.根據(jù)權(quán)利要求6所述的更新動(dòng)態(tài)網(wǎng)頁(yè)的方法,其特征在于,所述步驟B或C之后進(jìn)一步包括D.向服務(wù)器發(fā)送一個(gè)本地預(yù)存取數(shù)據(jù)更新請(qǐng)求,并根據(jù)服務(wù)器返回的相應(yīng)數(shù)據(jù)對(duì)所述客戶(hù)端中存儲(chǔ)的預(yù)存取數(shù)據(jù)進(jìn)行更新。
全文摘要
本發(fā)明涉及通信領(lǐng)域,提供了一種更新動(dòng)態(tài)網(wǎng)頁(yè)的方法及系統(tǒng)。所述方法包括以下步驟A.當(dāng)客戶(hù)端接收到用戶(hù)發(fā)起的動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求,則檢測(cè)所述客戶(hù)端中是否存在滿(mǎn)足所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求的預(yù)存取數(shù)據(jù),若存在則轉(zhuǎn)步驟B,若不存在則轉(zhuǎn)步驟C;B.從所述客戶(hù)端中提取所述預(yù)存取數(shù)據(jù),對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新;C.將所述動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求發(fā)送至服務(wù)器,當(dāng)收到所述服務(wù)器返回的相應(yīng)數(shù)據(jù)后,對(duì)用戶(hù)當(dāng)前瀏覽的動(dòng)態(tài)網(wǎng)頁(yè)進(jìn)行更新。本發(fā)明通過(guò)在客戶(hù)端中預(yù)先存儲(chǔ)動(dòng)態(tài)網(wǎng)頁(yè)的數(shù)據(jù),則當(dāng)用戶(hù)發(fā)送一個(gè)動(dòng)態(tài)網(wǎng)頁(yè)更新請(qǐng)求時(shí),可直接提取并發(fā)送給客戶(hù)端進(jìn)行動(dòng)態(tài)網(wǎng)頁(yè)的更新,極大地提高了請(qǐng)求響應(yīng)效率,增強(qiáng)了用戶(hù)體驗(yàn)。
文檔編號(hào)G06F17/30GK101079041SQ20061006360
公開(kāi)日2007年11月28日 申請(qǐng)日期2006年12月29日 優(yōu)先權(quán)日2006年12月29日
發(fā)明者伍海君, 劉陽(yáng), 劉立平, 曾文鵬, 楊雷鳴, 鄧君, 黃普光, 陳謙, 閆成亮, 曾偉雄, 朱熙 申請(qǐng)人:騰訊科技(深圳)有限公司