新四季網

HTML文件的分布式發布方法和HTML文件的分布式發布裝置與流程

2023-11-08 07:56:13


本發明涉及Web應用技術領域,具體而言,涉及一種HTML文件的分布式發布方法和一種HTML文件的分布式發布裝置。



背景技術:

目前,現有的B/S架構的項目,都是將靜態HTML(Hyper Text Markup Language,標準通用標記語言)文件放在Web伺服器上,或者通過後臺的模版引擎動態渲染後,提供給客戶端使用。採用這種方式,所有的對HTML文件的請求,都會集中由Web伺服器提供,增加了Web伺服器的負擔,耗費了Web伺服器性能。特別是在並發量大或項目頁面量大時,以上的這些缺點會放大,最終成為產品的瓶頸和短板。

因此,如何降低Web伺服器的負擔,優化Web伺服器性能成為亟待解決的技術問題。



技術實現要素:

本發明正是基於上述問題,提出了一種新的技術方案,可以降低Web伺服器的負擔,優化Web伺服器性能。

有鑑於此,本發明的第一方面提出了一種HTML文件的分布式發布方法,包括:根據業務需要,將HTML文件劃分為多個模塊;生成所述多個模塊中的每個模塊的HTML模板文件,並將所述HTML模板文件轉換成JavaScript文件;將所述JavaScript文件發布到內容分發網絡(Content Delivery Network,CDN)上。

在該技術方案中,通過將HTML文件轉換成JavaScript文件,並發布到CDN,以將HTML文件存放到CND伺服器上,避免了將HTML文件存放在Web伺服器上,也就避免了由Web伺服器提供對HTML文件的請求,從而降低了Web伺服器的負擔,優化Web伺服器性能。另外,可以就近訪問CND伺服器,大幅度地提升了站點的響應速度,減少了Web伺服器資源和CND資源的浪費,提升了用戶的使用體驗。

在上述技術方案中,優選地,所述生成所述多個模塊中的每個模塊的HTML模板文件,並將所述HTML模板文件轉換成JavaScript文件的步驟,具體包括:在所述每個模塊中添加標記,以生成所述HTML模板文件;解析出所述HTML模板文件中的標記,並根據所述HTML模板文件中的標記,將所述HTML模板文件轉換成所述JavaScript文件。

在該技術方案中,由於CDN上不允許存放HTML文件,因此,通過在每個模塊中添加標記來生成HTML模板文件,然後將其轉換成JavaScript文件,從而為HTML文件發布到CDN上提供了基礎。

在上述任一技術方案中,優選地,所述解析出所述HTML模板文件中的標記的步驟,具體包括:將所述HTML模板文件中的內容讀取為字符串,使用正則表達式對所述字符串進行分析,以獲取到所述HTML模板文件中的標記。

在上述任一技術方案中,優選地,所述HTML模板文件中的標記包括:佔位標記、條件控制標記、分支控制標識和循環標記。

在該技術方案中,使用正則表達式對字符串進行分析,找出預置的佔位標記,將佔位替換為業務數據,或JS(JavaScript)變量,並在變量被賦值後,替換變量佔位標記。將條件控制標識及分支控制標識,轉換為JavaScript中的條件控制語句及分支控制語句,從而實現HTML模板文件到JavaScript文件的轉換。

在上述任一技術方案中,優選地,所述多個模塊之間相互獨立,且所述多個模塊中的任兩個模塊之間通過接口進行交互。

在該技術方案中,多個模塊之間相互獨立,各自負責各自的展現和邏輯,彼此之間通過接口進行交互,從而為HTML文件的分布式發布提供了保障。

本發明的第二方面提出了一種HTML文件的分布式發布裝置,包括:劃分單元,用於根據業務需要,將HTML文件劃分為多個模塊;轉換單元,用於生成所述多個模塊中的每個模塊的HTML模板文件,並將所述HTML模板文件轉換成JavaScript文件;發布單元,用於將所述JavaScript文件發布到內容分發網絡上。

在該技術方案中,通過將HTML文件轉換成JavaScript文件,並發布到CDN,以將HTML文件存放到CND伺服器上,避免了將HTML文件存放在Web伺服器上,也就避免了由Web伺服器提供對HTML文件的請求,從而降低了Web伺服器的負擔,優化Web伺服器性能。另外,可以就近訪問CND伺服器,大幅度地提升了站點的響應速度,減少了Web伺服器資源和CND資源的浪費,提升了用戶的使用體驗。

在上述技術方案中,優選地,所述轉換單元包括:生成子單元,用於在所述每個模塊中添加標記,以生成所述HTML模板文件;轉換子單元,用於解析出所述HTML模板文件中的標記,並根據所述HTML模板文件中的標記,將所述HTML模板文件轉換成所述JavaScript文件。

在該技術方案中,由於CDN上不允許存放HTML文件,因此,通過在每個模塊中添加標記來生成HTML模板文件,然後將其轉換成JavaScript文件,從而為HTML文件發布到CDN上提供了基礎。

在上述任一技術方案中,優選地,所述轉換子單元具體用於,將所述HTML模板文件中的內容讀取為字符串,使用正則表達式對所述字符串進行分析,以獲取到所述HTML模板文件中的標記。

在上述任一技術方案中,優選地,所述HTML模板文件中的標記包括:佔位標記、條件控制標記、分支控制標識和循環標記。

在該技術方案中,使用正則表達式對字符串進行分析,找出預置的佔位標記,將佔位替換為業務數據,或JS(JavaScript)變量,並在變量被賦值後,替換變量佔位標記。將條件控制標識及分支控制標識,轉換為JavaScript中的條件控制語句及分支控制語句,從而實現HTML模板文件到JavaScript文件的轉換。

在上述任一技術方案中,優選地,所述多個模塊之間相互獨立,且所述多個模塊中的任兩個模塊之間通過接口進行交互。

在該技術方案中,多個模塊之間相互獨立,各自負責各自的展現和邏輯,彼此之間通過接口進行交互,從而為HTML文件的分布式發布提供了保障。

通過本發明的技術方案,可以降低Web伺服器的負擔,優化Web伺服器性能。

附圖說明

圖1示出了根據本發明的一個實施例的HTML文件的分布式發布方法的流程示意圖;

圖2示出了根據本發明的另一個實施例的HTML文件的分布式發布方法的流程示意圖;

圖3示出了根據本發明的一個實施例的HTML文件的分布式發布裝置的結構示意圖。

具體實施方式

為了可以更清楚地理解本發明的上述目的、特徵和優點,下面結合附圖和具體實施方式對本發明進行進一步的詳細描述。需要說明的是,在不衝突的情況下,本申請的實施例及實施例中的特徵可以相互組合。

在下面的描述中闡述了很多具體細節以便於充分理解本發明,但是,本發明還可以採用其他不同於在此描述的其他方式來實施,因此,本發明的保護範圍並不受下面公開的具體實施例的限制。

圖1示出了根據本發明的一個實施例的HTML文件的分布式發布方法的流程示意圖。

如圖1所示,根據本發明的一個實施例的HTML文件的分布式發布方法,包括:

步驟102,根據業務需要,將HTML文件劃分為多個模塊。

步驟104,生成所述多個模塊中的每個模塊的HTML模板文件,並將所述HTML模板文件轉換成JavaScript文件。

步驟106,將所述JavaScript文件發布到內容分發網絡上。

在該技術方案中,通過將HTML文件轉換成JavaScript文件,並發布到CDN,以將HTML文件存放到CND伺服器上,避免了將HTML文件存放在Web伺服器上,也就避免了由Web伺服器提供對HTML文件的請求,從而降低了Web伺服器的負擔,優化Web伺服器性能。另外,可以就近訪問CND伺服器,大幅度地提升了站點的響應速度,減少了Web伺服器資源和CND資源的浪費,提升了用戶的使用體驗。

在上述技術方案中,優選地,步驟104具體包括:在所述每個模塊中添加標記,以生成所述HTML模板文件;解析出所述HTML模板文件中的標記,並根據所述HTML模板文件中的標記,將所述HTML模板文件轉換成所述JavaScript文件。

在該技術方案中,由於CDN上不允許存放HTML文件,因此,通過在每個模塊中添加標記來生成HTML模板文件,然後將其轉換成JavaScript文件,從而為HTML文件發布到CDN上提供了基礎。

具體地,通過在每個模塊中加入標記(語法糖),用來標識HTML中的佔位、條件控制、循環等。

如下代碼,以下代碼中的雙花括號即語法糖。

{{entity.name}}!您好

年齡:{{entity.age}}

{{each list}}

{{index+1}}{{value}}!

{{/each}}

在上述任一技術方案中,優選地,所述解析出所述HTML模板文件中的標記的步驟,具體包括:將所述HTML模板文件中的內容讀取為字符串,使用正則表達式對所述字符串進行分析,以獲取到所述HTML模板文件中的標記。

在上述任一技術方案中,優選地,所述HTML模板文件中的標記包括:佔位標記、條件控制標記、分支控制標識和循環標記。

在該技術方案中,使用正則表達式對字符串進行分析,找出預置的佔位標記,將佔位替換為業務數據,或JS(JavaScript)變量,並在變量被賦值後,替換變量佔位標記。將條件控制標識及分支控制標識,轉換為JavaScript中的條件控制語句及分支控制語句,從而實現HTML模板文件到JavaScript文件的轉換。

在上述任一技術方案中,優選地,所述多個模塊之間相互獨立,且所述多個模塊中的任兩個模塊之間通過接口進行交互。

在該技術方案中,多個模塊之間相互獨立,各自負責各自的展現和邏輯,彼此之間通過接口進行交互,從而為HTML文件的分布式發布提供了保障。

圖2示出了根據本發明的另一個實施例的HTML文件的分布式發布方法的流程示意圖。

如圖2所示,根據本發明的另一個實施例的HTML文件的分布式發布方法,包括:

步驟202,將HTML文件劃分為多個模塊。每個模塊擁有自身獨有的CSS(Cascading Style Sheets,層疊樣式表)和JS(JavaScript)等資源。多個模塊相互之間具有獨立性,各自負責各自的展現和邏輯,彼此之間通過接口進行交互。

步驟204,對多個模塊分別模板化。

步驟206,轉換成JavaScript文件。

步驟208,將JavaScript文件發布到CDN s1、CDN s2、CDN s3等CDN上,以通過CDN為客戶端提供HTML頁面的請求。

圖3示出了根據本發明的一個實施例的HTML文件的分布式發布裝置的結構示意圖。

如圖3所示,根據本發明的一個實施例的HTML文件的分布式發布裝置300,包括:劃分單元302、轉換單元304和發布單元306。

劃分單元302,用於根據業務需要,將HTML文件劃分為多個模塊;轉換單元304,用於生成所述多個模塊中的每個模塊的HTML模板文件,並將所述HTML模板文件轉換成JavaScript文件;發布單元306,用於將所述JavaScript文件發布到內容分發網絡上。

在該技術方案中,通過將HTML文件轉換成JavaScript文件,並發布到CDN,以將HTML文件存放到CND伺服器上,避免了將HTML文件存放在Web伺服器上,也就避免了由Web伺服器提供對HTML文件的請求,從而降低了Web伺服器的負擔,優化Web伺服器性能。另外,可以就近訪問CND伺服器,大幅度地提升了站點的響應速度,減少了Web伺服器資源和CND資源的浪費,提升了用戶的使用體驗。

在上述技術方案中,優選地,所述轉換單元304包括:生成子單元3042,用於在所述每個模塊中添加標記,以生成所述HTML模板文件;轉換子單元3044,用於解析出所述HTML模板文件中的標記,並根據所述HTML模板文件中的標記,將所述HTML模板文件轉換成所述JavaScript文件。

在該技術方案中,由於CDN上不允許存放HTML文件,因此,通過在每個模塊中添加標記來生成HTML模板文件,然後將其轉換成JavaScript文件,從而為HTML文件發布到CDN上提供了基礎。

在上述任一技術方案中,優選地,所述轉換子單元3044具體用於,將所述HTML模板文件中的內容讀取為字符串,使用正則表達式對所述字符串進行分析,以獲取到所述HTML模板文件中的標記。

在上述任一技術方案中,優選地,所述HTML模板文件中的標記包括:佔位標記、條件控制標記、分支控制標識和循環標記。

在該技術方案中,使用正則表達式對字符串進行分析,找出預置的佔位標記,將佔位替換為業務數據,或JS(JavaScript)變量,並在變量被賦值後,替換變量佔位標記。將條件控制標識及分支控制標識,轉換為JavaScript中的條件控制語句及分支控制語句,從而實現HTML模板文件到JavaScript文件的轉換。

在上述任一技術方案中,優選地,所述多個模塊之間相互獨立,且所述多個模塊中的任兩個模塊之間通過接口進行交互。

在該技術方案中,多個模塊之間相互獨立,各自負責各自的展現和邏輯,彼此之間通過接口進行交互,從而為HTML文件的分布式發布提供了保障。

以上結合附圖詳細說明了本發明的技術方案,通過本發明的技術方案,將Web前端資源中,除首頁中少量的佔位符及Dom文檔結構代碼外,都存放到CDN伺服器上(包括圖片、CSS和JS等靜態資源),並通過CDN的同步機制,將資源分發到整個網際網路中,從而降低Web伺服器的負擔,優化Web伺服器性能。另外,用戶可以就近訪問,大幅度提升站點的響應速度,減少Web伺服器資源的浪費,提升了用戶的體驗。

以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀