亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

頁面渲染方法及裝置與流程

文檔序號:12364132閱讀:315來源:國知局
頁面渲染方法及裝置與流程

本公開涉及數(shù)據(jù)處理領(lǐng)域,具體地,涉及一種頁面渲染方法及裝置。



背景技術(shù):

客戶端用戶通過瀏覽器訪問網(wǎng)頁時,可以通過頁面渲染將用戶請求的網(wǎng)頁呈現(xiàn)給用戶。

具體地,瀏覽器解析用戶輸入的URL地址,向服務(wù)器發(fā)出頁面渲染請求后,服務(wù)器可以根據(jù)用戶權(quán)限,獲取頁面展示所需的頁面元素及數(shù)據(jù),并將數(shù)據(jù)填充到對應(yīng)的頁面元素處,生成html文件,發(fā)送至瀏覽器,由瀏覽器根據(jù)html文件完成頁面渲染。

由上文所做介紹可知,頁面渲染過程中涉及的計算大多由服務(wù)器完成,例如,權(quán)限控制、準(zhǔn)備頁面元素、獲取數(shù)據(jù)、填充數(shù)據(jù)等均由服務(wù)器完成,致使服務(wù)器的處理資源被大量消耗,給服務(wù)器造成較大的負(fù)擔(dān),若服務(wù)器發(fā)生阻塞,還會影響瀏覽器的渲染效果。在高并發(fā)情況下,上述問題顯得尤為突出。



技術(shù)實現(xiàn)要素:

本公開的目的是提供一種頁面渲染方法及裝置,用以充分利用服務(wù)器和瀏覽器的處理資源,提高頁面渲染速度。

本公開實施例提供了一種頁面渲染方法,所述方法包括:瀏覽器向服務(wù)器發(fā)送頁面渲染請求;所述瀏覽器接收所述服務(wù)器返回的頁面渲染響應(yīng),所述頁面渲染響應(yīng)包括頁面結(jié)構(gòu)和頁面數(shù)據(jù),所述頁面結(jié)構(gòu)包括頁面元素、以及所述頁面元素與所述頁面數(shù)據(jù)的對應(yīng)關(guān)系;所述瀏覽器根據(jù)所述對應(yīng)關(guān)系,將所述頁面數(shù)據(jù)填充到對應(yīng)的頁面元素所在的位置,完成頁面渲染。

可選地,所述頁面渲染請求包括用戶身份信息,則所述頁面元素由所述服務(wù)器根據(jù)用戶權(quán)限信息選取,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定。

可選地,所述頁面渲染請求包括用戶身份信息,所述頁面渲染響應(yīng)包括用戶權(quán)限信息,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定,則在所述瀏覽器接收所述服務(wù)器返回的頁面渲染響應(yīng)之后,所述方法還包括:所述瀏覽器根據(jù)所述用戶權(quán)限信息,從所述頁面元素中選取待展示頁面元素。

可選地,所述瀏覽器根據(jù)所述對應(yīng)關(guān)系,將所述頁面數(shù)據(jù)填充到對應(yīng)的頁面元素所在的位置,完成頁面渲染的步驟包括:

每個所述頁面元素根據(jù)所述對應(yīng)關(guān)系,獲取各自對應(yīng)的所述頁面數(shù)據(jù);

每個所述頁面元素將各自對應(yīng)的所述頁面數(shù)據(jù)填充到該頁面元素自身所在的位置,完成頁面渲染。

可選地,所述方法還包括:所述瀏覽器在本地緩存所述頁面結(jié)構(gòu)。

可選地,所述裝置還包括:在所述用戶身份信息、所述用戶權(quán)限信息和所述對應(yīng)關(guān)系中的至少一者發(fā)生變更時,所述瀏覽器向所述服務(wù)器發(fā)送請求,用以更新本地緩存的頁面結(jié)構(gòu)。

本公開實施例提供了一種頁面渲染裝置,所述裝置包括:

請求發(fā)送單元,用于向服務(wù)器發(fā)送頁面渲染請求;

響應(yīng)接收單元,用于接收所述服務(wù)器返回的頁面渲染響應(yīng),所述頁面渲染響應(yīng)包括頁面結(jié)構(gòu)和頁面數(shù)據(jù),所述頁面結(jié)構(gòu)包括頁面元素、以及所述頁面元素與所述頁面數(shù)據(jù)的對應(yīng)關(guān)系;

數(shù)據(jù)填充單元,用于根據(jù)所述對應(yīng)關(guān)系,將所述頁面數(shù)據(jù)填充到對應(yīng)的頁面元素所在的位置,完成頁面渲染。

可選地,所述請求發(fā)送單元,用于向服務(wù)器發(fā)送頁面渲染請求,所述頁面渲染請求包括用戶身份信息,則所述頁面元素由所述服務(wù)器根據(jù)用戶權(quán)限信息選取,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定。

可選地,所述請求發(fā)送單元,用于向服務(wù)器發(fā)送頁面渲染請求,所述頁面渲染請求包括用戶身份信息,所述頁面渲染響應(yīng)包括用戶權(quán)限信息,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定,則所述裝置還包括:選取單元,用于在所述響應(yīng)接收單元接收所述頁面渲染響應(yīng)之后,根據(jù)所述用戶權(quán)限信息,從所述頁面元素中選取待展示頁面元素。

可選地,所述數(shù)據(jù)填充單元包括:

獲取子模塊,用于由每個所述頁面元素根據(jù)所述對應(yīng)關(guān)系,獲取各自對應(yīng)的所述頁面數(shù)據(jù);

數(shù)據(jù)填充子模塊,用于由每個所述頁面元素將各自對應(yīng)的所述頁面數(shù)據(jù)填充到該頁面元素自身所在的位置,完成頁面渲染。

可選地,所述裝置還包括:緩存單元,用于在本地緩存所述頁面結(jié)構(gòu)。

可選地,所述裝置還包括:更新單元,用于在所述用戶身份信息、所述用戶權(quán)限信息和所述對應(yīng)關(guān)系中的至少一者發(fā)生變更時,向所述服務(wù)器發(fā)送請求,用以更新本地緩存的頁面結(jié)構(gòu)。

本公開技術(shù)方案,將頁面渲染過程劃分為兩個階段:服務(wù)器頁面渲染階段和瀏覽器頁面渲染階段。服務(wù)器頁面渲染階段,服務(wù)器只需要建立頁面元素與頁面數(shù)據(jù)的對應(yīng)關(guān)系,并將頁面元素和對應(yīng)關(guān)系封裝為頁面結(jié)構(gòu),將頁面數(shù)據(jù)和頁面結(jié)構(gòu)發(fā)送至瀏覽器。瀏覽器頁面渲染階段,瀏覽器接收到頁面數(shù)據(jù)和頁面結(jié)構(gòu)后,解析頁面結(jié)構(gòu)獲得對應(yīng)關(guān)系,進(jìn)而根據(jù)對應(yīng)關(guān)系將頁面數(shù)據(jù)填充到頁面元素表示的位置。如此,既節(jié)省了服務(wù)器的處理資源,又合理利用了瀏覽器的閑置資源,使資源利用率最大化,有助于提高頁面渲染速度。

本公開的其他特征和優(yōu)點(diǎn)將在隨后的具體實施方式部分予以詳細(xì)說明。

附圖說明

附圖是用來提供對本公開的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與下面的具體實施方式一起用于解釋本公開,但并不構(gòu)成對本公開的限制。在附圖中:

圖1是本公開頁面渲染方法的流程圖;

圖2是本公開頁面渲染裝置的結(jié)構(gòu)示意圖。

具體實施方式

以下結(jié)合附圖對本公開的具體實施方式進(jìn)行詳細(xì)說明。應(yīng)當(dāng)理解的是,此處所描述的具體實施方式僅用于說明和解釋本公開,并不用于限制本公開。

參見圖1,示出了本公開頁面渲染方法的流程圖,可以包括:

S101,瀏覽器向服務(wù)器發(fā)送頁面渲染請求。

S102,所述瀏覽器接收所述服務(wù)器返回的頁面渲染響應(yīng),所述頁面渲染響應(yīng)包括頁面結(jié)構(gòu)和頁面數(shù)據(jù),所述頁面結(jié)構(gòu)包括頁面元素、以及所述頁面元素與所述頁面數(shù)據(jù)的對應(yīng)關(guān)系。

S103,所述瀏覽器根據(jù)所述對應(yīng)關(guān)系,將所述頁面數(shù)據(jù)填充到對應(yīng)的頁面元素所在的位置,完成頁面渲染。

發(fā)明人在研發(fā)過程中發(fā)現(xiàn),現(xiàn)有的頁面渲染技術(shù)將大量計算放置在服務(wù)器中執(zhí)行,致使服務(wù)器處理資源緊張,瀏覽器處理資源閑置,出現(xiàn)資源利用不均衡現(xiàn)象。為了緩解服務(wù)器壓力,本公開方案將頁面渲染過程分為服務(wù)器頁面渲染階段和瀏覽器頁面渲染階段,兩個階段相互配合,充分利用服務(wù)器和瀏覽器的處理資源,有效降低服務(wù)器和瀏覽器單一方面的負(fù)荷,并減少瀏覽器的頁面渲染時間。

本公開方案中,瀏覽器解析用戶輸入的URL地址,向服務(wù)器發(fā)送頁面渲染請求后,進(jìn)入服務(wù)器頁面渲染階段。本階段服務(wù)器需要獲取以下兩方面信息:

1.頁面數(shù)據(jù)。以表單為例,頁面數(shù)據(jù)可以體現(xiàn)為表單數(shù)據(jù)。

2.頁面結(jié)構(gòu),具體包括兩部分:頁面元素;頁面元素與頁面數(shù)據(jù)的對應(yīng)關(guān)系??梢岳斫獾?,本公開的對應(yīng)關(guān)系指的是頁面元素的身份標(biāo)識與頁面數(shù)據(jù)的身份標(biāo)識之間的對應(yīng)關(guān)系。

也就是說,服務(wù)器只需要建立頁面元素與頁面數(shù)據(jù)的對應(yīng)關(guān)系即可,不需要一一完成數(shù)據(jù)填充,服務(wù)器可以將頁面數(shù)據(jù)和頁面結(jié)構(gòu)發(fā)送至瀏覽器,由瀏覽器分擔(dān)數(shù)據(jù)填充這部分工作。如此,既節(jié)省了服務(wù)器的處理資源,又合理利用了瀏覽器的閑置資源,使資源利用率最大化,有助于提高頁面渲染速度。

需要說明的是,服務(wù)器可以同時將頁面數(shù)據(jù)、頁面結(jié)構(gòu)返回至瀏覽器;或者,服務(wù)器也可以先將頁面結(jié)構(gòu)返回至瀏覽器,并在瀏覽器解析頁面結(jié)構(gòu)進(jìn)行數(shù)據(jù)填充時,再向服務(wù)器請求頁面數(shù)據(jù),本公開實施例對此可不做限定,具體可結(jié)合實際應(yīng)用而定。

本公開方案中,瀏覽器接收到服務(wù)器返回的頁面結(jié)構(gòu)和頁面數(shù)據(jù),即可被觸發(fā)進(jìn)入瀏覽器渲染階段。本階段瀏覽器可以執(zhí)行如下操作:

1.解析頁面結(jié)構(gòu),獲得頁面元素,以及頁面元素的對應(yīng)關(guān)系。

2.根據(jù)對應(yīng)關(guān)系查找頁面數(shù)據(jù),將頁面數(shù)據(jù)填充到與之對應(yīng)的頁面元素所表示的位置,完成頁面渲染。

需要說明的是,在進(jìn)行頁面數(shù)據(jù)填充時,如果無順序要求,可以依次讀取并填充;如果有順序要求,瀏覽器和服務(wù)器可以預(yù)先約定數(shù)據(jù)填充順序,例如,針對表單數(shù)據(jù),可以約定在前的為表單行,在后的為表單列,如此,瀏覽器解析到頁面元素對應(yīng)的表單數(shù)據(jù)后,將先讀取到的數(shù)據(jù)作為行數(shù)據(jù),后讀取到的數(shù)據(jù)作為列數(shù)據(jù),完成數(shù)據(jù)填充。

另外,可選地,在進(jìn)行數(shù)據(jù)填充時,可以由各個頁面元素自身來完成。具體地,瀏覽器在接收到服務(wù)器返回的頁面結(jié)構(gòu)和頁面數(shù)據(jù)后,首先通過解析頁面結(jié)構(gòu),獲得頁面元素,以及頁面元素的對應(yīng)關(guān)系。

之后,每個頁面元素可以根據(jù)該對應(yīng)關(guān)系,獲取各自對應(yīng)的頁面數(shù)據(jù)。接下來,每個頁面元素將各自對應(yīng)的頁面數(shù)據(jù)填充到該頁面元素自身所在的位置,完成頁面渲染。

通過將數(shù)據(jù)填充的工作分配到由各個頁面元素自身來完成,可以提供總體的頁面渲染速度及效率。

作為一種示例,本公開的頁面結(jié)構(gòu)可以是個性化的頁面結(jié)構(gòu)。也就是說,瀏覽器向服務(wù)器發(fā)送的頁面渲染請求中可以包括用戶身份信息,服務(wù)器可以先根據(jù)用戶身份信息確定用戶權(quán)限信息,進(jìn)而根據(jù)用戶權(quán)限信息選取該用戶可以訪問的頁面所包含的頁面元素。也就是說,針對不同權(quán)限的用戶,服務(wù)器返回的頁面結(jié)構(gòu)可能會有所不同。

作為一種示例,本公開的頁面結(jié)構(gòu)可以是通用的頁面結(jié)構(gòu)。也就是說,針對不同權(quán)限的用戶,服務(wù)器可以返回相同的頁面結(jié)構(gòu),然后再由瀏覽器根據(jù)用戶權(quán)限信息,從服務(wù)器返回的頁面結(jié)構(gòu)中選取待展示頁面元素,該待展示頁面元素針對當(dāng)前用戶。需要說明的是,用戶權(quán)限信息可以配置于瀏覽器運(yùn)行的客戶端;或者用戶權(quán)限信息還可以是服務(wù)器根據(jù)用戶身份信息確定后,返回給瀏覽器,本公開實施例對此可不做限定,具體可結(jié)合實際應(yīng)用而定。

作為一種示例,瀏覽器接收到服務(wù)器返回的頁面結(jié)構(gòu)后,可以將頁面結(jié)構(gòu)緩存在客戶端本地。如此,當(dāng)瀏覽器再次請求對同一URL進(jìn)行頁面渲染時,服務(wù)器可以只向瀏覽器返回頁面數(shù)據(jù),以此保證數(shù)據(jù)展示的準(zhǔn)確性。

作為一種示例,瀏覽器和/或服務(wù)器可以監(jiān)控以下三方面信息,并在其中至少一項信息發(fā)生變更時,瀏覽器可以向服務(wù)器發(fā)送請求,用以更新本地緩存的頁面結(jié)構(gòu),以此保證頁面展示的準(zhǔn)確性。本公開所說三方面信息指的是用戶身份信息、用戶權(quán)限信息、對應(yīng)關(guān)系。

與圖1所示方法相對應(yīng),本公開實施例還提供一種頁面渲染裝置200,參見圖2所示示意圖,所述裝置200包括:

請求發(fā)送單元201,用于向服務(wù)器發(fā)送頁面渲染請求;

響應(yīng)接收單元202,用于接收所述服務(wù)器返回的頁面渲染響應(yīng),所述頁面渲染響應(yīng)包括頁面結(jié)構(gòu)和頁面數(shù)據(jù),所述頁面結(jié)構(gòu)包括頁面元素、以及所述頁面元素與所述頁面數(shù)據(jù)的對應(yīng)關(guān)系;

數(shù)據(jù)填充單元203,用于根據(jù)所述對應(yīng)關(guān)系,將所述頁面數(shù)據(jù)填充到對應(yīng)的頁面元素所在的位置,完成頁面渲染。

可選地,所述請求發(fā)送單元,用于向服務(wù)器發(fā)送頁面渲染請求,所述頁面渲染請求包括用戶身份信息,則所述頁面元素由所述服務(wù)器根據(jù)用戶權(quán)限信息選取,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定。

可選地,所述請求發(fā)送單元,用于向服務(wù)器發(fā)送頁面渲染請求,所述頁面渲染請求包括用戶身份信息,所述頁面渲染響應(yīng)包括用戶權(quán)限信息,所述用戶權(quán)限信息為所述服務(wù)器根據(jù)所述用戶身份信息確定,則所述裝置還包括:

選取單元,用于在所述響應(yīng)接收單元接收所述頁面渲染響應(yīng)之后,根據(jù)所述用戶權(quán)限信息,從所述頁面元素中選取待展示頁面元素。

可選地,所述數(shù)據(jù)填充單元包括:

獲取子模塊,用于由每個所述頁面元素根據(jù)所述對應(yīng)關(guān)系,獲取各自對應(yīng)的所述頁面數(shù)據(jù);

數(shù)據(jù)填充子模塊,用于由每個所述頁面元素將各自對應(yīng)的所述頁面數(shù)據(jù)填充到該頁面元素自身所在的位置,完成頁面渲染。

可選地,所述裝置200還包括:緩存單元,用于在本地緩存所述頁面結(jié)構(gòu)。

可選地,所述裝置200還包括:更新單元,用于在所述用戶身份信息、所述用戶權(quán)限信息和所述對應(yīng)關(guān)系中的至少一者發(fā)生變更時,向所述服務(wù)器發(fā)送請求,用以更新本地緩存的頁面結(jié)構(gòu)。

以上結(jié)合附圖詳細(xì)描述了本公開的優(yōu)選實施方式,但是,本公開并不限于上述實施方式中的具體細(xì)節(jié),在本公開的技術(shù)構(gòu)思范圍內(nèi),可以對本公開的技術(shù)方案進(jìn)行多種簡單變型,這些簡單變型均屬于本公開的保護(hù)范圍。

另外需要說明的是,在上述具體實施方式中所描述的各個具體技術(shù)特征,在不矛盾的情況下,可以通過任何合適的方式進(jìn)行組合,為了避免不必要的重復(fù),本公開對各種可能的組合方式不再另行說明。

此外,本公開的各種不同的實施方式之間也可以進(jìn)行任意組合,只要其不違背本公開的思想,其同樣應(yīng)當(dāng)視為本公開所公開的內(nèi)容。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1