欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種WebApp加載方法及裝置制造方法

文檔序號:6638041閱讀:1932來源:國知局
一種Web App加載方法及裝置制造方法
【專利摘要】本發(fā)明公開了一種Web App加載方法及裝置,用于提高加載速度,該方法包括:創(chuàng)建包括多個頁面組件的頁面組件池;讀取待加載頁面的頁面標識信息,如果根據(jù)頁面標識信息判斷當前任一頁面組件中已加載待加載頁面,則直接調(diào)用該頁面組件顯示待加載頁面;如果根據(jù)頁面標識信息判斷當前各個頁面組件中均未加載待加載頁面,則從頁面組件池中選擇一個頁面組件,使用所選擇的頁面組件加載待加載頁面;具體的,當緩存有待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取頁面解析信息,使用所選擇的頁面組件加載待加載頁面;當未緩存待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載待加載頁面。
【專利說明】_種Web App加載方法及裝置

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,具體涉及一種Web App加載方法及裝置。

【背景技術(shù)】
[0002]近年來,隨著智能移動設(shè)備計算能力的日益強大、觸控體驗的逐步完善以及移動互聯(lián)網(wǎng)和云端服務(wù)化的日益普及,移動App市場發(fā)展迅猛。目前,原生應(yīng)用在消費生活類應(yīng)用領(lǐng)域占據(jù)著主導地位,但是當前智能終端平臺繁多,碎片化嚴重,導致開發(fā)成本劇增,學習曲線陡峭,跨平臺資源復(fù)用困難。隨著HTML5作為一種通用技術(shù)標準的提出,為跨終端移動應(yīng)用開發(fā)帶來了一絲曙光,越來越多的廠商和開發(fā)者開始基于HTML5構(gòu)建網(wǎng)頁應(yīng)用WebApp0
[0003]在現(xiàn)有技術(shù)中Web App的開發(fā)框架均通過單一窗體加載切換不同的頁面,直接導致Web App在頁面切換過程中的不流暢,且每次加載頁面速度較慢。


【發(fā)明內(nèi)容】

[0004]有鑒于此,本發(fā)明提供一種Web App加載方法及裝置,以解決現(xiàn)有技術(shù)中運行WebApp切換不流暢且加載速度慢的技術(shù)問題。
[0005]為解決上述問題,本發(fā)明提供的技術(shù)方案如下:
[0006]一種網(wǎng)頁應(yīng)用Web App加載方法,所述方法包括:
[0007]在所述Web App啟動時,創(chuàng)建頁面組件池,所述頁面組件池中包括多個頁面組件;
[0008]讀取待加載頁面的頁面標識信息,如果根據(jù)所述頁面標識信息判斷當前任一所述頁面組件中已加載所述待加載頁面,則直接調(diào)用該頁面組件顯示所述待加載頁面;
[0009]如果根據(jù)所述頁面標識信息判斷當前各個所述頁面組件中均未加載所述待加載頁面,則從所述頁面組件池中選擇一個頁面組件,使用所選擇的頁面組件加載所述待加載頁面;
[0010]所述使用所選擇的頁面組件加載所述待加載頁面包括:當緩存有所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取所述頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面;當未緩存所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面。
[0011]相應(yīng)的,從所述頁面組件池中選擇一個頁面組件,包括:
[0012]判斷所述頁面組件池中是否有空閑頁面組件,如果有空閑頁面組件,則選擇任一所述空閑頁面組件,如果沒有空閑頁面組件,則選擇所述頁面組件池中最先被使用的頁面組件。
[0013]相應(yīng)的,所述方法還包括:
[0014]在使用所選擇的頁面組件加載所述待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,所述頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
[0015]相應(yīng)的,所述創(chuàng)建網(wǎng)頁組件池,包括:
[0016]從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量;
[0017]按照所述初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。
[0018]相應(yīng)的,所述方法還包括:
[0019]當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示所述待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
[0020]相應(yīng)的,所述方法還包括:
[0021]如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)所述Web App可用內(nèi)存增加所述頁面組件池中頁面組件的數(shù)量;
[0022]如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少所述頁面組件池中頁面組件的數(shù)量。
[0023]相應(yīng)的,所述根據(jù)所述Web App內(nèi)存情況增加所述頁面組件池中頁面組件的數(shù)量,包括:
[0024]從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量;
[0025]如果當前所述頁面組件池中頁面組件的數(shù)量小于所述最大網(wǎng)頁組件數(shù)量,則讀取所述Web App當前可用內(nèi)存;
[0026]如果所述Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入所述網(wǎng)頁組件池。
[0027]—種網(wǎng)頁應(yīng)用Web App加載裝置,所述裝置包括:
[0028]創(chuàng)建單元,用于在所述Web App啟動時,創(chuàng)建頁面組件池,所述頁面組件池中包括多個頁面組件;
[0029]讀取單元,用于讀取待加載頁面的頁面標識信息;
[0030]調(diào)用單元,用于如果根據(jù)所述頁面標識信息判斷當前任一所述頁面組件中已加載所述待加載頁面,則直接調(diào)用該頁面組件顯示所述待加載頁面;
[0031]選擇單元,用于如果根據(jù)所述頁面標識信息判斷當前各個所述頁面組件中均未加載所述待加載頁面,則從所述頁面組件池中選擇一個頁面組件;
[0032]加載單元,用于使用所述選擇單元所選擇的頁面組件加載所述待加載頁面;
[0033]所述加載單元具體用于:當緩存有所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取所述頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面;當未緩存所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面。
[0034]相應(yīng)的,所述選擇單元包括:
[0035]判斷子單元,用于判斷所述頁面組件池中是否有空閑頁面組件;
[0036]第一選擇子單元,用于如果所述判斷子單元判斷有空閑頁面組件,則選擇任一所述空閑頁面組件;
[0037]第二判斷子單元,用于如果所述判斷子單元判斷沒有空閑頁面組件,則選擇所述頁面組件池中最先被使用的頁面組件。
[0038]相應(yīng)的,所述裝置還包括:
[0039]緩存單元,用于在所述加載單元使用所選擇的頁面組件加載所述待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,所述頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
[0040]相應(yīng)的,所述創(chuàng)建單元包括:
[0041]第一讀取子單元,用于在所述Web App啟動時,從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量;
[0042]第一創(chuàng)建子單元,用于按照所述初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。
[0043]相應(yīng)的,所述裝置還包括:
[0044]恢復(fù)單元,用于當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示所述待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
[0045]相應(yīng)的,所述裝置還包括:
[0046]增加單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)所述Web App可用內(nèi)存增加所述頁面組件池中頁面組件的數(shù)量;
[0047]減少單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少所述頁面組件池中頁面組件的數(shù)量。
[0048]相應(yīng)的,所述增加單元包括:
[0049]第二讀取子單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量;
[0050]第三讀取子單元,用于如果當前所述頁面組件池中頁面組件的數(shù)量小于所述最大網(wǎng)頁組件數(shù)量,則讀取所述Web App當前可用內(nèi)存;
[0051]第二創(chuàng)建子單元,用于如果所述Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入所述網(wǎng)頁組件池。
[0052]由此可見,本發(fā)明實施例具有如下有益效果:
[0053]本發(fā)明實施例通過建立包括多個頁面組件的頁面組件池,當需要切換頁面時,可以直接從一個網(wǎng)頁組件切換到另一網(wǎng)頁組件進行頁面加載,切換過程流暢;同時,利用頁面緩存技術(shù)存儲頁面加載所需信息,減少了加載時間,具體的,一方面,如果某個頁面組件中已加載待加載頁面則直接調(diào)用該頁面組件顯示待加載頁面,節(jié)省了頁面加載過程;另一方面,在網(wǎng)頁組件加載另一頁面前,需要將前一加載頁面的頁面解析信息進行緩存,當再次加載已緩存過頁面解析信息的頁面時,可以自動從緩存中獲取頁面解析信息進行頁面加載,節(jié)省了頁面加載解析時間。

【專利附圖】

【附圖說明】
[0054]圖1為本發(fā)明實施例中提供的Web App加載方法實施例一的流程圖;
[0055]圖2為本發(fā)明實施例中提供的Web App加載方法實施例二的流程圖;
[0056]圖3為本發(fā)明實施例中提供的Web App加載方法實施例三的流程圖;
[0057]圖4為本發(fā)明實施例中提供的Web App加載方法實施例四的流程圖;
[0058]圖5為本發(fā)明實施例中提供的Web App加載裝置實施例的示意圖。

【具體實施方式】
[0059]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和【具體實施方式】對本發(fā)明實施例作進一步詳細的說明。
[0060]現(xiàn)有技術(shù)中Web App頁面加載過程中存在頁面切換過程不流暢,加載速度較慢的技術(shù)問題,通過分析產(chǎn)生上述問題的主要原因是現(xiàn)有技術(shù)采用單一頁面組件(即單一窗體)進行頁面加載,每次頁面切換時該單一頁面組件需要刪除當前加載的頁面再加載新的頁面,導致切換過程生硬不流暢,且每次加載新的頁面均需要進行解析,導致頁面加載速度較慢。
[0061]針對這一技術(shù)問題本發(fā)明實施例中提供的Web App加載方法及裝置,提出創(chuàng)建包括多個頁面組件的頁面組件池,在頁面切換時可以在多個頁面組件間切換,保證切換的流程性,同時利用頁面緩存技術(shù)緩存頁面加載所需信息,減少加載時間,緩存可以有兩個層面,第一層面是利用頁面組件直接緩存頁面,即如果某個頁面組件中已加載待加載頁面則直接調(diào)用該頁面組件顯示待加載頁面,從而節(jié)省頁面加載時間;另一個層面是緩存頁面解析信息,例如緩存DOM(Document Object Model,文件對象模型)解析信息,即網(wǎng)頁組件加載另一頁面前,需要將前一加載頁面的頁面解析信息進行緩存,當再次加載已緩存過頁面解析信息的頁面時,可以自動從緩存中獲取頁面解析信息進行頁面加載,從而縮短解析時間。
[0062]本發(fā)明實施例中提供的Web App加載方法將從Web App加載裝置的角度進行描述,該Web App加載裝置具體可以集成在客戶端中,該客戶端可以裝載在終端中,該終端具體可以為智能手機、平板電腦、電子書閱讀器、MP3 (Moving Picture Experts Group Aud1Layer III,動態(tài)影像專家壓縮標準音頻層面3)播放器、MP4 (Moving Picture ExpertsGroup Aud1 Layer IV,動態(tài)影像專家壓縮標準音頻層面3)播放器、膝上型便攜計算機和臺式計算機等等。
[0063]基于上述思想,參見圖1所示,是本發(fā)明實施例中提供的Web App加載方法實施例一,可以包括以下步驟:
[0064]步驟101:在Web App啟動時,創(chuàng)建頁面組件池,頁面組件池中包括多個頁面組件。
[0065]Web App是指基于Web的系統(tǒng)和應(yīng)用,可以分為瀏覽器訪問模式以及本地訪問模式,瀏覽器訪問模式可以理解為基于移動操作系統(tǒng)優(yōu)化的Web站點,應(yīng)用的展現(xiàn)頁面及數(shù)據(jù)全部來自遠程服務(wù)器;本地訪問模式基于HTML5+Native技術(shù)實現(xiàn),在頁面資源外通過加殼方式打包成原生應(yīng)用安裝包,與原生應(yīng)用一樣安裝在移動設(shè)備中。通過WebView展現(xiàn)本地的頁面資源,而數(shù)據(jù)來自遠程服務(wù)器,并且可以存儲在本地。不論上述哪種訪問模式,WebApp均需要使用頁面組件(即窗體)對頁面進行加載,在加載過程中需要對待加載頁面進行解析。
[0066]本發(fā)明實施例在Web App啟動時,創(chuàng)建包括多個頁面組件的頁面組件池,創(chuàng)建網(wǎng)頁組件池的具體實現(xiàn)可以為:從該Web App的配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量;按照初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。其中,初始化數(shù)量可以根據(jù)Web App占用內(nèi)存情況靈活設(shè)置。
[0067]在實際應(yīng)用中,Web App啟動時創(chuàng)建頁面組件池,并初始化各個頁面組件實例,不同操作系統(tǒng)采取的技術(shù)方案有所差別,例如Android操作系統(tǒng)可以使用Activity組件,1S操作系統(tǒng)可以適應(yīng)viewController組件。
[0068]步驟102:讀取待加載頁面的頁面標識信息,如果根據(jù)頁面標識信息判斷當前任一頁面組件中已加載待加載頁面,則直接調(diào)用該頁面組件顯示待加載頁面。
[0069]在接收到用戶觸發(fā)的頁面加載指令后,可以獲取到待加載頁面的頁面標識信息,頁面標識信息可以唯一標識待加載頁面,例如頁面標識信息可以為待加載頁面的URL (Uniform Resource Locator,統(tǒng)一資源定位符),根據(jù)頁面標識信息可以判斷當前各個頁面組件中是否加載有待加載頁面,如果有則可以直接調(diào)用這個頁面組件顯示待加載頁面。例如,頁面組件池中有5個頁面組件,當前使用了兩個頁面組件分別加載了“百度首頁”和“新浪首頁”,如果接收到待加載頁面的頁面標識信息表示當前待加載頁面依然為“百度首頁”,則直接調(diào)用已經(jīng)加載了 “百度首頁”的網(wǎng)頁組件顯示待加載頁面。
[0070]步驟103:如果根據(jù)頁面標識信息判斷當前各個頁面組件中均未加載待加載頁面,則從頁面組件池中選擇一個頁面組件,使用所選擇的頁面組件加載待加載頁面。
[0071]在本發(fā)明的一些實施例中,從頁面組件池中選擇一個頁面組件的具體實現(xiàn)可以包括:
[0072]判斷頁面組件池中是否有空閑頁面組件,如果有空閑頁面組件,則選擇任一空閑頁面組件,如果沒有空閑頁面組件,則選擇頁面組件池中最先被使用的頁面組件。
[0073]即如果當前各個頁面組件中均未加載待加載頁面,則需要選取一個頁面組件進行頁面加載,如果有空閑頁面組件,則選擇空閑頁面組件,如果當前頁面組件池中的頁面組件均已加載頁面,則選擇最先被使用的頁面組件進行頁面加載。例如,頁面組件池中有5個頁面組件,當前使用了兩個頁面組件分別加載了 “百度首頁”和“新浪首頁”,如果接收到待加載頁面的頁面標識信息表示表示當前待加載頁面為其他頁面,則可以選擇其他三個空閑的頁面組件直接使用;而如果當前頁面組件池中5個頁面組件均加載了不同頁面,再次需要加載頁面時,則可以選擇5個頁面組件中最先被使用的加載頁面。
[0074]在本發(fā)明的一些實施例中,在使用所選擇的頁面組件加載待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
[0075]每個頁面組件加載頁面后,首先在該頁面組件中緩存加載的頁面,在后續(xù)如果需要再次加載該頁面時直接顯示,而頁面組件在需要從一個頁面切換加載其他頁面時,則需要先將前一加載頁面的頁面解析信息進行緩存,具體可以緩存每個頁面的頁面標識信息對應(yīng)該頁面的頁面解析信息。
[0076]則使用所選擇的頁面組件加載待加載頁面的具體實現(xiàn)可以包括:當緩存有待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取頁面解析信息,使用所選擇的頁面組件加載待加載頁面;當未緩存待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載待加載頁面。
[0077]這樣,本發(fā)明實施例通過建立包括多個頁面組件的頁面組件池,當需要切換頁面時,可以直接從一個網(wǎng)頁組件切換到另一網(wǎng)頁組件進行頁面加載,切換過程流暢;同時,利用頁面緩存技術(shù)存儲頁面加載所需信息,減少了加載時間,具體的,一方面,如果某個頁面組件中已加載待加載頁面則直接調(diào)用該頁面組件顯示待加載頁面,節(jié)省了頁面加載過程;另一方面,在網(wǎng)頁組件加載另一頁面前,需要將前一加載頁面的頁面解析信息進行緩存,當再次加載已緩存過頁面解析信息的頁面時,可以自動從緩存中獲取頁面解析信息進行頁面加載,節(jié)省了頁面加載解析時間。
[0078]參見圖2所示,是本發(fā)明實施例中提供的Web App加載方法實施例二,對頁面組件池初始化以及主頁面加載流程進行說明,可以包括以下步驟:
[0079]步驟201:在Web App啟動時,從該Web App的配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量。
[0080]步驟202:創(chuàng)建初始化數(shù)量指定數(shù)量的頁面組件,構(gòu)成頁面組件池。
[0081]在實際應(yīng)用中,一般在Web App啟動后的初始化狀態(tài)顯示一個空白的頁面組件,而在后臺運行其他頁面組件,共同構(gòu)成可以使用的頁面組件池,可以對各個頁面組件進行編號。
[0082]步驟203:從頁面組件池中獲取一個頁面組件。本實施例說明的是在Web App啟動后第一個頁面(即主頁面)加載的過程,此時,全部頁面組件均為空閑狀態(tài),可以從頁面組件池中任意獲取一個頁面組件,但可以理解的是,在實際應(yīng)用中一般是按照編號順序從頁面組件池中獲取第一個頁面組件使用。
[0083]步驟204:讀取待加載頁面的頁面標識信息,即獲取主頁面的URL。
[0084]步驟205:記錄頁面組件與頁面標識信息的對應(yīng)關(guān)系,即記錄頁面組件與主頁面URL的對應(yīng)關(guān)系。在每個頁面組件加載時,均可以記錄該頁面組件編號與所加載頁面的URL,以便于后續(xù)快速查找是否加載了相同頁面以及所使用的頁面組件位置。
[0085]步驟206:生成頁面解析信息,加載主頁面。在每個頁面首次加載過程中需要進行DOM解析,生成DOM解析結(jié)果,完成主頁面加載。
[0086]參見圖3所示,是本發(fā)明實施例中提供的Web App加載方法實施例三,對頁面切換加載流程進行說明,可以包括以下步驟:
[0087]步驟301:在頁面切換時,讀取待加載頁面的頁面標識信息。頁面切換是指在加載過主頁面之后,再次加載頁面即可稱為頁面切換,在本發(fā)明實施例中由于頁面組件池中有多個頁面組件,在頁面切換時直接由一個頁面組件切換到另一個頁面組件,切換過程流暢。
[0088]步驟302:根據(jù)頁面標識信息判斷是否有頁面組件中已加載待加載頁面,如果是,執(zhí)行步驟303,如果否,執(zhí)行步驟304。
[0089]由于在每個頁面組件加載頁面時,均可以記錄頁面組件序號和頁面標識信息的對應(yīng)關(guān)系,在獲取待加載頁面的頁面標識信息后,可以查找該頁面標識信息是否與某一個頁面組件序號相對應(yīng),如果有,則找到已加載待加載頁面的頁面組件。
[0090]步驟303:直接調(diào)用該頁面組件顯示待加載頁面。
[0091]步驟304:判斷頁面組件池中是否有空閑頁面組件,如果是,執(zhí)行步驟305,如果否,執(zhí)行步驟306??臻e頁面組件是指當前沒有加載頁面的頁面組件。
[0092]步驟305:選擇任一空閑頁面組件。可以理解的是,在實際應(yīng)用中一般按照頁面組件序號順序選擇空閑頁面組件,例如,當前使用了兩個頁面組件,則選取第三個頁面組件為空閑頁面組件。
[0093]步驟306:選擇頁面組件池中最先被使用的頁面組件。
[0094]步驟307:緩存頁面組件中當前加載頁面的頁面解析信息。即在使用頁面組件加載新頁面時,如果當前頁面組件加載了頁面,則對已加載頁面的頁面解析信息進行緩存,之后再進行新頁面的加載。在實際應(yīng)用中,也可以通過頁面標識信息判斷該頁面的頁面解析信息是否緩存過,如果緩存過,可以不再次重復(fù)緩存。
[0095]步驟308:根據(jù)頁面標識信息判斷是否緩存待加載頁面對應(yīng)的頁面解析信息,如果是,執(zhí)彳丁步驟309,如果否,執(zhí)彳丁步驟311。
[0096]步驟309:獲取頁面解析信息。
[0097]步驟310:利用從緩存中獲取的頁面解析信息加載待加載頁面。
[0098]步驟311:生成頁面解析信息。
[0099]步驟312:利用生成的頁面解析信息加載待加載頁面。
[0100]即在頁面切換時,針對未在現(xiàn)有頁面組件中保留的頁面,引入緩存機制,將頁面DOM解析信息進行保存。當加載已緩存過解析信息的頁面時,頁面組件自動從緩存中獲取解析信息后進行頁面展現(xiàn),減少了解析時間。
[0101]另外,本發(fā)明還可以利用內(nèi)存協(xié)調(diào)機制動態(tài)調(diào)整頁面組件池規(guī)模,在本發(fā)明的一些實施例中,本發(fā)明實施例中提供的Web App加載方法還可以包括:
[0102]當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
[0103]即網(wǎng)頁組件在一定時間內(nèi)一直緩存有已加載頁面,而該頁面超過第一預(yù)設(shè)時間沒有再次被加載,則所使用的頁面組件將恢復(fù)為空閑狀態(tài)。
[0104]如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)Web App可用內(nèi)存增加頁面組件池中頁面組件的數(shù)量;
[0105]如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少頁面組件池中頁面組件的數(shù)量。
[0106]也就是說,在一定時間內(nèi)一直沒有空閑頁面組件使用,則可以根據(jù)當前Web App內(nèi)存使用情況增加頁面組件數(shù)量,而在一定時間內(nèi)一直存在空閑頁面組件,則可以減少頁面組件數(shù)量,以釋放一部分內(nèi)存占用。
[0107]上述第一預(yù)設(shè)時間、第二預(yù)設(shè)時間、第一預(yù)設(shè)次數(shù)、第二預(yù)設(shè)次數(shù)可以靈活設(shè)置,本發(fā)明對此不進行限定。
[0108]其中根據(jù)Web App內(nèi)存情況增加頁面組件池中頁面組件的數(shù)量的具體實現(xiàn)可以包括:
[0109]從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量;
[0110]如果當前頁面組件池中頁面組件的數(shù)量小于最大網(wǎng)頁組件數(shù)量,則讀取Web App當前可用內(nèi)存;
[0111]如果Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入網(wǎng)頁組件池。
[0112]參見圖4所示,是本發(fā)明實施例中提供的Web App加載方法實施例四,對頁面組件池擴容流程進行說明,可以包括以下步驟:
[0113]步驟401:在需要頁面組件池擴容時,獲取網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量。
[0114]頁面組件池擴容的觸發(fā)時機是上述說明的如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)Web App可用內(nèi)存增加頁面組件池中頁面組件的數(shù)量。在頁面組件池擴容過程中,首先從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)中包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量。
[0115]步驟402:判斷當前頁面組件池中頁面組件的數(shù)量是否小于最大網(wǎng)頁組件數(shù)量,如果是,執(zhí)行步驟403,如果否,結(jié)束當前流程。
[0116]步驟403:讀取Web App當前可用內(nèi)存。
[0117]步驟404:判斷當前可用內(nèi)存是否大于一個網(wǎng)頁組件所需內(nèi)存,如果是,執(zhí)行步驟405,如果否,結(jié)束當前流程。
[0118]步驟405:創(chuàng)建一個新的網(wǎng)頁組件加入網(wǎng)頁組件池。
[0119]Web App的內(nèi)存使用總量有上限值,Web App的內(nèi)存使用總量與當前已使用內(nèi)存量的差值即為Web App當前可用內(nèi)存量,在當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存時,則可以再建立一個頁面組件以供加載頁面使用。
[0120]本發(fā)明實施例當已加載頁面的頁面組件未被訪問時間超過設(shè)定值,該頁面組件將會置成空閑狀態(tài);而當頁面組件池在一段時間內(nèi)頻繁被申請且無空閑頁面組件時(超過最大請求次數(shù)),則將根據(jù)內(nèi)存實際情況動態(tài)擴充頁面組件池規(guī)模;反之還可以回收頁面組件,即減少頁面組件數(shù)量。在保證系統(tǒng)性能不受影響的情況下,利用內(nèi)存協(xié)調(diào)機制,動態(tài)調(diào)整頁面組件池規(guī)模,提升了響應(yīng)性能。
[0121]參見圖5所示,是本發(fā)明實施例中提供的Web App加載裝置實施例,可以包括:
[0122]創(chuàng)建單元501,用于在Web App啟動時,創(chuàng)建頁面組件池,頁面組件池中包括多個頁面組件。.
[0123]在本發(fā)明的一些實施例中,創(chuàng)建單元可以包括:
[0124]第一讀取子單元,用于在Web App啟動時,從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量;
[0125]第一創(chuàng)建子單元,用于按照初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。
[0126]讀取單元502,用于讀取待加載頁面的頁面標識信息。
[0127]調(diào)用單元503,用于如果根據(jù)頁面標識信息判斷當前任一頁面組件中已加載待加載頁面,則直接調(diào)用該頁面組件顯示待加載頁面。
[0128]選擇單元504,用于如果根據(jù)頁面標識信息判斷當前各個頁面組件中均未加載待加載頁面,則從頁面組件池中選擇一個頁面組件。
[0129]在本發(fā)明的一些實施例中,選擇單元可以包括:
[0130]判斷子單元,用于判斷頁面組件池中是否有空閑頁面組件;
[0131]第一選擇子單元,用于如果判斷子單元判斷有空閑頁面組件,則選擇任一空閑頁面組件;
[0132]第二判斷子單元,用于如果判斷子單元判斷沒有空閑頁面組件,則選擇頁面組件池中最先被使用的頁面組件。
[0133]加載單元505,用于使用選擇單元所選擇的頁面組件加載待加載頁面。
[0134]在本發(fā)明的一些實施例中,本發(fā)明實施例中提供的Web App加載裝置還可以包括:
[0135]緩存單元,用于在加載單元使用所選擇的頁面組件加載待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
[0136]則加載單元可以具體用于:當緩存有待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取頁面解析信息,使用所選擇的頁面組件加載待加載頁面;當未緩存待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載待加載頁面。
[0137]另外,在本發(fā)明的一些實施例中,本發(fā)明實施例中提供的Web App加載裝置還可以包括:
[0138]恢復(fù)單元,用于當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
[0139]增加單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)Web App可用內(nèi)存增加頁面組件池中頁面組件的數(shù)量;
[0140]減少單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少頁面組件池中頁面組件的數(shù)量。
[0141]在本發(fā)明的一些實施例中,增加單元可以包括:
[0142]第二讀取子單元,用于如果在第二預(yù)設(shè)內(nèi)時間判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量;
[0143]第三讀取子單元,用于如果當前頁面組件池中頁面組件的數(shù)量小于最大網(wǎng)頁組件數(shù)量,則讀取Web App當前可用內(nèi)存;
[0144]第二創(chuàng)建子單元,用于如果Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入網(wǎng)頁組件池。
[0145]這樣,本發(fā)明實施例通過建立包括多個頁面組件的頁面組件池,當需要切換頁面時,可以直接從一個網(wǎng)頁組件切換到另一網(wǎng)頁組件進行頁面加載,切換過程流暢;同時,利用頁面緩存技術(shù)存儲頁面加載所需信息,減少了加載時間,具體的,一方面,如果某個頁面組件中已加載待加載頁面則直接調(diào)用該頁面組件顯示待加載頁面,節(jié)省了頁面加載過程;另一方面,在網(wǎng)頁組件加載另一頁面前,需要將前一加載頁面的頁面解析信息進行緩存,當再次加載已緩存過頁面解析信息的頁面時,可以自動從緩存中獲取頁面解析信息進行頁面加載,節(jié)省了頁面加載解析時間。
[0146]需要說明的是,本說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的系統(tǒng)或裝置而言,由于其與實施例公開的方法相對應(yīng),所以描述的比較簡單,相關(guān)之處參見方法部分說明即可。
[0147]還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。
[0148]結(jié)合本文中所公開的實施例描述的方法或算法的步驟可以直接用硬件、處理器執(zhí)行的軟件模塊,或者二者的結(jié)合來實施。軟件模塊可以置于隨機存儲器(RAM)、內(nèi)存、只讀存儲器(ROM)、電可編程ROM、電可擦除可編程ROM、寄存器、硬盤、可移動磁盤、CD-ROM、或【技術(shù)領(lǐng)域】內(nèi)所公知的任意其它形式的存儲介質(zhì)中。
[0149]對所公開的實施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文中所定義的一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實施例中實現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實施例,而是要符合與本文所公開的原理和新穎特點相一致的最寬的范圍。
【權(quán)利要求】
1.一種網(wǎng)頁應(yīng)用Web App加載方法,其特征在于,所述方法包括: 在所述Web App啟動時,創(chuàng)建頁面組件池,所述頁面組件池中包括多個頁面組件; 讀取待加載頁面的頁面標識信息,如果根據(jù)所述頁面標識信息判斷當前任一所述頁面組件中已加載所述待加載頁面,則直接調(diào)用該頁面組件顯示所述待加載頁面; 如果根據(jù)所述頁面標識信息判斷當前各個所述頁面組件中均未加載所述待加載頁面,則從所述頁面組件池中選擇一個頁面組件,使用所選擇的頁面組件加載所述待加載頁面; 所述使用所選擇的頁面組件加載所述待加載頁面包括:當緩存有所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取所述頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面;當未緩存所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,從所述頁面組件池中選擇一個頁面組件,包括: 判斷所述頁面組件池中是否有空閑頁面組件,如果有空閑頁面組件,則選擇任一所述空閑頁面組件,如果沒有空閑頁面組件,則選擇所述頁面組件池中最先被使用的頁面組件。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在使用所選擇的頁面組件加載所述待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,所述頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述創(chuàng)建網(wǎng)頁組件池,包括: 從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量; 按照所述初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。
5.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示所述待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
6.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)所述Web App可用內(nèi)存增加所述頁面組件池中頁面組件的數(shù)量; 如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少所述頁面組件池中頁面組件的數(shù)量。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述根據(jù)所述WebApp內(nèi)存情況增加所述頁面組件池中頁面組件的數(shù)量,包括: 從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量; 如果當前所述頁面組件池中頁面組件的數(shù)量小于所述最大網(wǎng)頁組件數(shù)量,則讀取所述Web App當前可用內(nèi)存; 如果所述Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入所述網(wǎng)頁組件池。
8.—種網(wǎng)頁應(yīng)用Web App加載裝置,其特征在于,所述裝置包括: 創(chuàng)建單元,用于在所述Web App啟動時,創(chuàng)建頁面組件池,所述頁面組件池中包括多個頁面組件; 讀取單元,用于讀取待加載頁面的頁面標識信息; 調(diào)用單元,用于如果根據(jù)所述頁面標識信息判斷當前任一所述頁面組件中已加載所述待加載頁面,則直接調(diào)用該頁面組件顯示所述待加載頁面; 選擇單元,用于如果根據(jù)所述頁面標識信息判斷當前各個所述頁面組件中均未加載所述待加載頁面,則從所述頁面組件池中選擇一個頁面組件; 加載單元,用于使用所述選擇單元所選擇的頁面組件加載所述待加載頁面; 所述加載單元具體用于:當緩存有所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,獲取所述頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面;當未緩存所述待加載頁面的頁面標識信息對應(yīng)的頁面解析信息時,生成頁面解析信息,使用所選擇的頁面組件加載所述待加載頁面。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述選擇單元包括: 判斷子單元,用于判斷所述頁面組件池中是否有空閑頁面組件; 第一選擇子單元,用于如果所述判斷子單元判斷有空閑頁面組件,則選擇任一所述空閑頁面組件; 第二判斷子單元,用于如果所述判斷子單元判斷沒有空閑頁面組件,則選擇所述頁面組件池中最先被使用的頁面組件。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括: 緩存單元,用于在所述加載單元使用所選擇的頁面組件加載所述待加載頁面之前,緩存該頁面組件中加載頁面的頁面解析信息,所述頁面解析信息與該頁面組件中加載頁面的頁面標識信息相對應(yīng)。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述創(chuàng)建單元包括: 第一讀取子單元,用于在所述Web App啟動時,從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的初始化數(shù)量; 第一創(chuàng)建子單元,用于按照所述初始化數(shù)量創(chuàng)建相應(yīng)數(shù)量的網(wǎng)頁組件,構(gòu)成網(wǎng)頁組件池。
12.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 恢復(fù)單元,用于當已加載頁面的網(wǎng)頁組件超過第一預(yù)設(shè)時間未被調(diào)用顯示所述待加載頁面時,將該網(wǎng)頁組件恢復(fù)為空閑頁面組件。
13.根據(jù)權(quán)利要求9所述的裝置,其特征在于,所述裝置還包括: 增加單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則根據(jù)所述Web App可用內(nèi)存增加所述頁面組件池中頁面組件的數(shù)量; 減少單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷有空閑頁面組件的次數(shù)超過第二預(yù)設(shè)次數(shù),則減少所述頁面組件池中頁面組件的數(shù)量。
14.根據(jù)權(quán)利要求13所述的裝置,其特征在于,所述增加單元包括: 第二讀取子單元,用于如果在第二預(yù)設(shè)時間內(nèi)判斷沒有空閑頁面組件的次數(shù)超過第一預(yù)設(shè)次數(shù),則從配置文件中讀取網(wǎng)頁組件池的配置參數(shù),所述配置參數(shù)包括網(wǎng)頁組件池的最大網(wǎng)頁組件數(shù)量; 第三讀取子單元,用于如果當前所述頁面組件池中頁面組件的數(shù)量小于所述最大網(wǎng)頁組件數(shù)量,則讀取所述Web App當前可用內(nèi)存; 第二創(chuàng)建子單元,用于如果所述Web App當前可用內(nèi)存大于一個網(wǎng)頁組件所需內(nèi)存,則創(chuàng)建一個新的網(wǎng)頁組件加入所述網(wǎng)頁組件池。
【文檔編號】G06F9/445GK104461632SQ201410754020
【公開日】2015年3月25日 申請日期:2014年12月9日 優(yōu)先權(quán)日:2014年12月9日
【發(fā)明者】張鑫 申請人:東軟集團股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
汝城县| 中西区| 萝北县| 舒城县| 北辰区| 辽源市| 留坝县| 如皋市| 连平县| 兴安盟| 开阳县| 饶阳县| 陆丰市| 通江县| 昭通市| 杂多县| 尉犁县| 特克斯县| 曲沃县| 乐清市| 景德镇市| 嵊泗县| 澜沧| 临夏市| 樟树市| 灵寿县| 华容县| 崇左市| 张掖市| 金坛市| 西充县| 海晏县| 高雄市| 肃北| 元谋县| 江油市| 左权县| 西充县| 星座| 庆元县| 高邮市|