[發(fā)明專利]一種靜態(tài)資源發(fā)布方法、裝置、計(jì)算設(shè)備及存儲(chǔ)介質(zhì)在審
| 申請(qǐng)?zhí)枺?/td> | 202211558132.7 | 申請(qǐng)日: | 2022-12-06 |
| 公開(kāi)(公告)號(hào): | CN115840587A | 公開(kāi)(公告)日: | 2023-03-24 |
| 發(fā)明(設(shè)計(jì))人: | 植天敏 | 申請(qǐng)(專利權(quán))人: | 企知道網(wǎng)絡(luò)技術(shù)有限公司 |
| 主分類號(hào): | G06F8/71 | 分類號(hào): | G06F8/71;G06F8/60 |
| 代理公司: | 武漢維興專利代理有限公司 42298 | 代理人: | 溫開(kāi)瑞 |
| 地址: | 518000 廣東省深圳市南山區(qū)西麗*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 靜態(tài) 資源 發(fā)布 方法 裝置 計(jì)算 設(shè)備 存儲(chǔ) 介質(zhì) | ||
本發(fā)明公開(kāi)了一種靜態(tài)資源發(fā)布方法,包括:將待發(fā)布靜態(tài)資源的產(chǎn)出文件和產(chǎn)出文件清單增量發(fā)布到目標(biāo)存儲(chǔ)空間;在部署腳本中刪除rm命令,并在部署腳本后增加通知清理服務(wù)的清理指令;根據(jù)清理指令查詢目標(biāo)存儲(chǔ)空間中的文件清單,并基于文件清單中文件的最后修改時(shí)間對(duì)文件進(jìn)行清理。本方案能夠在不影響靜態(tài)文件發(fā)布效率的情況下降低服務(wù)器成本。
技術(shù)領(lǐng)域
本發(fā)明涉及互聯(lián)網(wǎng)前端開(kāi)發(fā)技術(shù)領(lǐng)域,具體涉及一種靜態(tài)資源發(fā)布方法、裝置、計(jì)算設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù)
目前前端靜態(tài)資源分布的過(guò)程是先刪除OSS(對(duì)象存儲(chǔ)服務(wù))中舊版本中的所有靜態(tài)資源后,再上傳新版本的靜態(tài)資源到OSS文件桶中,這會(huì)導(dǎo)致從刪除舊版本文件到上傳新版本文件期間前端靜態(tài)資源不可用。
為了解決前端資源不可用的問(wèn)題,現(xiàn)有技術(shù)中對(duì)于靜態(tài)資源有灰度發(fā)布方法,通過(guò)準(zhǔn)備兩個(gè)文件桶,先斷開(kāi)其中一個(gè)文件桶的鏈接進(jìn)行清理更新,將流量導(dǎo)向更新完成的文件桶,再更新未更新的文件桶。該方法存在的問(wèn)題是:如果用戶在文件桶完成更新之前訪問(wèn)頁(yè)面,更新完成后沒(méi)有刷新頁(yè)面,則會(huì)導(dǎo)致點(diǎn)擊部分按鈕或跳轉(zhuǎn)頁(yè)面后無(wú)法響應(yīng)。還有一種是增量發(fā)布方法,每次發(fā)布只往文件桶中上傳覆蓋新版本文件,實(shí)現(xiàn)無(wú)感知發(fā)布,但是該方案會(huì)導(dǎo)致文件桶內(nèi)的文件量持續(xù)增長(zhǎng),積壓大量歷史版本的廢棄文件,占據(jù)磁盤空間,增加服務(wù)器成本。
因此,需要一種靜態(tài)資源發(fā)布方法,能夠降低增量發(fā)布導(dǎo)致的磁盤空間持續(xù)增長(zhǎng)問(wèn)題。
發(fā)明內(nèi)容
鑒于上述問(wèn)題,本方案提出了一種靜態(tài)資源發(fā)布方法,解決增量發(fā)布導(dǎo)致的大量版本文件占據(jù)磁盤空間的問(wèn)題,降低服務(wù)器成本。
根據(jù)本發(fā)明的第一方面,提供一種靜態(tài)資源發(fā)布方法,包括:首先,將待發(fā)布靜態(tài)資源的產(chǎn)出文件和產(chǎn)出文件清單增量發(fā)布到目標(biāo)存儲(chǔ)空間;然后,在部署腳本中刪除rm命令,并在部署腳本后增加通知清理服務(wù)的清理指令;最后,根據(jù)清理指令查詢目標(biāo)存儲(chǔ)空間中的文件清單,并基于文件清單中文件的最后修改時(shí)間對(duì)文件進(jìn)行清理。
通過(guò)采用上述技術(shù)方案,在增量發(fā)布的基礎(chǔ)上增加一個(gè)非堵塞性的文件清理服務(wù),清理服務(wù)能夠清理最后修改時(shí)間大于預(yù)設(shè)時(shí)間的版本文件,避免大量累積的版本文件占據(jù)磁盤空間,在不影響靜態(tài)文件發(fā)布效率的情況下降低服務(wù)器成本。
可選地,在上述方法中,可以將待發(fā)布的json文件打包存儲(chǔ)到manifest文件夾中,形成打包文件;為每個(gè)打包文件創(chuàng)建文件名索引,并判斷文件名索引是否發(fā)生變更,若發(fā)生變更則提取變更的文件名索引對(duì)應(yīng)的打包文件作為產(chǎn)出文件;基于產(chǎn)出文件的文件名索引構(gòu)建文件清單,將產(chǎn)出文件和對(duì)應(yīng)的文件清單上傳到目標(biāo)存儲(chǔ)空間。
通過(guò)對(duì)build流程構(gòu)建的靜態(tài)資源的代碼源文件進(jìn)行打包并配置文件名索引,通過(guò)逐行對(duì)比文件名索引找出變更文件,將變更文件作為產(chǎn)出文件,以便對(duì)產(chǎn)出文件進(jìn)行部署,能夠節(jié)約存儲(chǔ)成本。將產(chǎn)出文件清單保存在目標(biāo)存儲(chǔ)空間能夠便于后續(xù)對(duì)文件進(jìn)行清理。
可選地,在上述方法中,通過(guò)對(duì)象存儲(chǔ)服務(wù)的命令行工具ossutil創(chuàng)建OSS_FILE_URL文件捅,作為目標(biāo)存儲(chǔ)空間。
通過(guò)對(duì)象存儲(chǔ)服務(wù)的命令行工具ossutil可以快速創(chuàng)建目標(biāo)存儲(chǔ)空間,即bucket(文件桶),便于將本地文件上傳到bucket中。完成上傳后可以將文件下載至本地或通過(guò)生成簽名URL的方式將文件分享給第三方。
可選地,在上述方法中,刪除ossutil部署腳本中的rm命令;在部署腳本后增加通知清理服務(wù)的清理指令,清理指令為( curl -d ‘${OSS_FILE_URL}’* )。
通過(guò)先將deploy部署腳本中刪除原有的rm命令,可以避免在清理文件時(shí)造成指令沖突。
可選地,在上述方法中,清理服務(wù)在接收到清理指令后返回成功狀態(tài),啟動(dòng)清理任務(wù)。
清理服務(wù)在接收到清理指令后,立即返回成功指令,避免堵塞CI/CD(持續(xù)集成和持續(xù)交付)流程。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于企知道網(wǎng)絡(luò)技術(shù)有限公司,未經(jīng)企知道網(wǎng)絡(luò)技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202211558132.7/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 復(fù)雜背景中實(shí)現(xiàn)靜態(tài)目標(biāo)檢測(cè)和識(shí)別的方法
- 一種設(shè)置靜態(tài)認(rèn)證信息的方法及裝置
- 一種基于物聯(lián)網(wǎng)技術(shù)的機(jī)房靜態(tài)資源快速定位的方法
- 一種動(dòng)態(tài)網(wǎng)頁(yè)靜態(tài)化的方法和裝置
- 瀏覽器靜態(tài)資源加載方法、瀏覽器程序及可讀存儲(chǔ)介質(zhì)
- 靜態(tài)資源更新方法、裝置、存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備
- 一種圖像顯示方法及裝置
- 一種靜態(tài)方法修改非靜態(tài)對(duì)象的方法
- 一種靜態(tài)資源加載方法、裝置、設(shè)備及可讀存儲(chǔ)介質(zhì)
- 一種靜態(tài)資源獲取方法、裝置及其相關(guān)設(shè)備
- 將發(fā)布數(shù)據(jù)發(fā)布至不同發(fā)布主機(jī)的系統(tǒng)及其方法
- 一種技術(shù)出版物內(nèi)容發(fā)布系統(tǒng)及方法
- 音/視頻流發(fā)布方法、流媒體服務(wù)器、發(fā)布端及流媒體系統(tǒng)
- 一種分布式代碼版本發(fā)布系統(tǒng)及方法
- 內(nèi)容發(fā)布方法、裝置、計(jì)算機(jī)設(shè)備以及可讀存儲(chǔ)介質(zhì)
- 文件發(fā)布方法和系統(tǒng)、發(fā)布服務(wù)器和文件生成裝置
- 軟件的發(fā)布質(zhì)量管理系統(tǒng)、方法以及裝置
- 信息發(fā)布方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 信息發(fā)布方法及裝置、存儲(chǔ)介質(zhì)、終端
- 服務(wù)發(fā)布方法及裝置、服務(wù)器、存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(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ì)





