[發(fā)明專利]數(shù)據(jù)長(zhǎng)效緩存方法、裝置、計(jì)算機(jī)系統(tǒng)及可讀存儲(chǔ)介質(zhì)在審
| 申請(qǐng)?zhí)枺?/td> | 202010127203.2 | 申請(qǐng)日: | 2020-02-28 |
| 公開(公告)號(hào): | CN111338688A | 公開(公告)日: | 2020-06-26 |
| 發(fā)明(設(shè)計(jì))人: | 婁保建 | 申請(qǐng)(專利權(quán))人: | 平安醫(yī)療健康管理股份有限公司 |
| 主分類號(hào): | G06F8/71 | 分類號(hào): | G06F8/71 |
| 代理公司: | 北京英特普羅知識(shí)產(chǎn)權(quán)代理有限公司 11015 | 代理人: | 程超 |
| 地址: | 200001 上海市黃浦*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 數(shù)據(jù) 長(zhǎng)效 緩存 方法 裝置 計(jì)算機(jī)系統(tǒng) 可讀 存儲(chǔ) 介質(zhì) | ||
本發(fā)明公開了提供的數(shù)據(jù)長(zhǎng)效緩存方法、裝置、計(jì)算機(jī)系統(tǒng)及可讀存儲(chǔ)介質(zhì),基于區(qū)塊鏈技術(shù),包括:提取源代碼文件并分離源代碼文件中的運(yùn)行時(shí)模塊獲得主代碼文件,分別打包主代碼文件和運(yùn)行時(shí)模塊獲得主代碼數(shù)據(jù)包和運(yùn)行時(shí)數(shù)據(jù)包;提取主代碼數(shù)據(jù)包中各模塊的文件路徑,分別對(duì)各模塊的文件路徑進(jìn)行哈希運(yùn)算生成模塊ID;匯總各模塊ID形成總模塊ID,對(duì)總模塊ID進(jìn)行哈希運(yùn)算生成文件ID;判斷主代碼文件中是否具有新增代碼;若具有新增代碼,則打包主代碼文件獲得新的主代碼數(shù)據(jù)包,獲取新增代碼在新的主代碼數(shù)據(jù)包中的文件路徑,對(duì)文件路徑進(jìn)行哈希運(yùn)算生成新增模塊ID。本發(fā)明避免了緩存的數(shù)據(jù)因ID的改變而失效的情況,達(dá)到了緩存長(zhǎng)時(shí)間有效的目的。
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)長(zhǎng)效緩存方法、裝置、計(jì)算機(jī)系統(tǒng)及可讀存儲(chǔ)介質(zhì)。
背景技術(shù)
代碼打包用于將源代碼制成便于用戶操作或安裝的數(shù)據(jù)包,服務(wù)器打包源代碼時(shí)還會(huì)按照源代碼中各模塊之間的依賴關(guān)系,生成用于標(biāo)記所述模塊的模塊ID;當(dāng)服務(wù)器在已有的源代碼新增模塊形成新代碼,并對(duì)新代碼打包生成新數(shù)據(jù)包時(shí),需要按照新代碼中各模塊之間的依賴關(guān)系生成新模塊ID。
數(shù)據(jù)包具有相互關(guān)聯(lián)的靜態(tài)數(shù)據(jù)和動(dòng)態(tài)數(shù)據(jù),所述靜態(tài)數(shù)據(jù)和動(dòng)態(tài)數(shù)據(jù)通過模塊ID相互關(guān)聯(lián);用戶端會(huì)獲取服務(wù)器中數(shù)據(jù)包的靜態(tài)數(shù)據(jù)(如:靜態(tài)頁(yè)面)并將其保存在緩存器中以便于用戶端再次調(diào)用;用戶端通過靜態(tài)數(shù)據(jù)中的模塊ID以從服務(wù)器的數(shù)據(jù)包中獲取動(dòng)態(tài)數(shù)據(jù)(如:動(dòng)態(tài)頁(yè)面數(shù)據(jù))。
然而,由于模塊ID是按照數(shù)據(jù)包中各模塊之間依賴關(guān)系所獲得的,因此一旦服務(wù)器在源代碼中新增模塊并打包時(shí),新增的模塊很容易造成源代碼中各模塊之間依賴關(guān)系的變化,進(jìn)而導(dǎo)致服務(wù)器中各模塊的ID隨之發(fā)生變化。
因服務(wù)器中數(shù)據(jù)包的模塊ID的頻繁變化,將使用戶端的緩存器中靜態(tài)數(shù)據(jù)的模塊ID與數(shù)據(jù)包中動(dòng)態(tài)數(shù)據(jù)的模塊ID無法對(duì)應(yīng),導(dǎo)致用戶端無法通過靜態(tài)數(shù)據(jù)的模塊ID命中與其對(duì)應(yīng)的動(dòng)態(tài)數(shù)據(jù),進(jìn)而造成用戶端緩存的靜態(tài)數(shù)據(jù)失效。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種數(shù)據(jù)長(zhǎng)效緩存方法、裝置、計(jì)算機(jī)系統(tǒng)及可讀存儲(chǔ)介質(zhì),用于解決現(xiàn)有技術(shù)存在的因服務(wù)器中數(shù)據(jù)包的模塊ID的頻繁變化,將使緩存器中靜態(tài)數(shù)據(jù)的模塊ID與數(shù)據(jù)包中動(dòng)態(tài)數(shù)據(jù)的模塊ID無法對(duì)應(yīng),導(dǎo)致用戶端無法通過靜態(tài)數(shù)據(jù)的模塊ID命中與其對(duì)應(yīng)的動(dòng)態(tài)數(shù)據(jù),進(jìn)而造成用戶端緩存的靜態(tài)數(shù)據(jù)失效問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種數(shù)據(jù)長(zhǎng)效緩存方法,包括:
提取源代碼文件并分離所述源代碼文件中的運(yùn)行時(shí)模塊獲得主代碼文件,分別打包所述主代碼文件和運(yùn)行時(shí)模塊,獲得相互關(guān)聯(lián)的主代碼數(shù)據(jù)包和運(yùn)行時(shí)數(shù)據(jù)包;
提取主代碼數(shù)據(jù)包中各模塊的文件路徑,分別對(duì)各模塊的文件路徑進(jìn)行哈希運(yùn)算,生成用于對(duì)所述主代碼文件中各模塊進(jìn)行標(biāo)識(shí)的模塊ID;匯總所述各模塊的模塊ID形成總模塊ID,對(duì)所述總模塊ID進(jìn)行哈希運(yùn)算生成用于對(duì)主代碼文件進(jìn)行標(biāo)識(shí)的文件ID;
定期判斷所述主代碼文件中是否具有新增代碼;若具有新增代碼,則打包所述主代碼文件獲得新的主代碼數(shù)據(jù)包,獲取所述新增代碼在所述新的主代碼數(shù)據(jù)包中的文件路徑,對(duì)所述文件路徑進(jìn)行哈希運(yùn)算生成用于對(duì)主代碼文件中新增代碼進(jìn)行標(biāo)識(shí)的新增模塊ID。
上述方案中,所述提取源代碼并分離源代碼文件中的運(yùn)行時(shí)模塊獲得主代碼文件包括:
從數(shù)據(jù)庫(kù)中提取源代碼文件,所述數(shù)據(jù)庫(kù)是位于服務(wù)器中用于保存代碼文件的模塊;
提取所述源代碼文件中的運(yùn)行時(shí)模塊使其脫離于所述源代碼文件,將消除運(yùn)行時(shí)模塊的源代碼文件設(shè)為主代碼文件。
上述方案中,所述分別對(duì)各模塊的文件路徑進(jìn)行哈希運(yùn)算,生成用于對(duì)所述主代碼文件中各模塊進(jìn)行標(biāo)識(shí)的模塊ID包括:
設(shè)置第一哈希算法的第一輸出長(zhǎng)度;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于平安醫(yī)療健康管理股份有限公司,未經(jīng)平安醫(yī)療健康管理股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010127203.2/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 緩存控制方法、裝置和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 至少具有三個(gè)緩存級(jí)別的緩存層級(jí)的混合低級(jí)緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





