[發(fā)明專(zhuān)利]軟件分發(fā)方法和裝置有效
| 申請(qǐng)?zhí)枺?/td> | 201110402128.7 | 申請(qǐng)日: | 2011-12-06 |
| 公開(kāi)(公告)號(hào): | CN102609278A | 公開(kāi)(公告)日: | 2012-07-25 |
| 發(fā)明(設(shè)計(jì))人: | 沃天宇;曾偉紀(jì);鐘亮;胡春明;懷進(jìn)鵬 | 申請(qǐng)(專(zhuān)利權(quán))人: | 北京航空航天大學(xué) |
| 主分類(lèi)號(hào): | G06F9/445 | 分類(lèi)號(hào): | G06F9/445;H04L29/06 |
| 代理公司: | 北京同立鈞成知識(shí)產(chǎn)權(quán)代理有限公司 11205 | 代理人: | 劉芳 |
| 地址: | 100191*** | 國(guó)省代碼: | 北京;11 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 軟件 分發(fā) 方法 裝置 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)技術(shù),尤其涉及一種軟件分發(fā)方法和裝置。?
背景技術(shù)
軟件即服務(wù)(Software-as-a-Service,簡(jiǎn)稱(chēng)SaaS)是一種通過(guò)Internet提供軟件的軟件服務(wù)化運(yùn)營(yíng)模式。SaaS模式下,服務(wù)提供商全權(quán)管理和維護(hù)軟件,用戶(hù)租用服務(wù)提供商提供的軟件,無(wú)需對(duì)軟件進(jìn)行維護(hù)。按照傳統(tǒng)的方式,軟件包需要完整地部署(復(fù)制、安裝)到執(zhí)行環(huán)境中才能開(kāi)始執(zhí)行,如果用戶(hù)請(qǐng)求一個(gè)當(dāng)前并未部署的軟件,就必須在整個(gè)部署階段內(nèi)等待。因此,傳統(tǒng)的部署策略與SaaS模式的按需使用特性顯然是沖突的。一個(gè)解決方案是在每個(gè)環(huán)境內(nèi)預(yù)先部署所有軟件,但這對(duì)運(yùn)營(yíng)商而言顯然是極不靈活的,會(huì)造成巨大的資源浪費(fèi)。另一個(gè)解決方案通過(guò)分析用戶(hù)需求預(yù)先部署所需種類(lèi)、所需數(shù)量的軟件,可以減輕資源浪費(fèi),但依然不夠靈活。因而,種類(lèi)繁多的軟件在執(zhí)行環(huán)境中以何種策略部署對(duì)軟件運(yùn)營(yíng)的效率有著極大的影響。?
軟件流式加載是解決部署難題的一個(gè)得力手段。在流式加載場(chǎng)景中,執(zhí)行環(huán)境中并不預(yù)先部署目標(biāo)軟件,而是根據(jù)程序需求以塊為單位下載軟件數(shù)據(jù)。研究表明由于程序運(yùn)行的局部性,軟件在啟動(dòng)、運(yùn)行中通常不會(huì)用到全部的數(shù)據(jù)。由此,在運(yùn)行時(shí)按需讀取軟件數(shù)據(jù)比預(yù)先部署再運(yùn)行可以獲得較快的啟動(dòng)速度。流式加載機(jī)制對(duì)于數(shù)據(jù)讀取的速度要求較高,每當(dāng)需要使用尚未下載的數(shù)據(jù),就需要暫停運(yùn)行,直到從服務(wù)器將數(shù)據(jù)下載完畢。另外,軟件流式加載以塊為單位進(jìn)行讀寫(xiě),加大了執(zhí)行節(jié)點(diǎn)對(duì)軟件倉(cāng)庫(kù)的訪問(wèn)頻率,對(duì)軟件分發(fā)機(jī)制的性能提出了更高的要求。?
然而,目前的軟件分發(fā)方法采用C/S模式,每個(gè)客戶(hù)端都要從軟件服務(wù)器上下載軟件,數(shù)據(jù)下載較慢,導(dǎo)致下載延遲較長(zhǎng),無(wú)法滿(mǎn)足軟件流式加載的低延遲的需求。?
發(fā)明內(nèi)容
本發(fā)明提供一種軟件分發(fā)方法和裝置,用于解決待加載軟件的節(jié)點(diǎn)數(shù)量較多時(shí)現(xiàn)有軟件加載方法延遲較長(zhǎng)的缺陷。?
本發(fā)明提供的一種軟件分發(fā)方法,包括:?
實(shí)例下載目標(biāo)軟件的目標(biāo)數(shù)據(jù)塊之前,若所述實(shí)例保存有所述目標(biāo)軟件的分組表,所述實(shí)例在所述分組表中查找到與待下載的目標(biāo)數(shù)據(jù)塊所在塊組對(duì)應(yīng)的目標(biāo)超級(jí)實(shí)例后,向所述目標(biāo)超級(jí)實(shí)例發(fā)送實(shí)例索引表獲取請(qǐng)求,用于請(qǐng)求所述目標(biāo)超級(jí)實(shí)例提供所述目標(biāo)數(shù)據(jù)塊的實(shí)例索引表;所述目標(biāo)軟件的數(shù)據(jù)塊組成多個(gè)塊組,一個(gè)塊組至少包括一個(gè)數(shù)據(jù)塊,所述分組表包括塊組與超級(jí)實(shí)例的一一對(duì)應(yīng)關(guān)系;?
若所述目標(biāo)超級(jí)實(shí)例確定所述目標(biāo)數(shù)據(jù)塊有對(duì)應(yīng)的實(shí)例索引表,所述實(shí)例接收所述目標(biāo)超級(jí)實(shí)例發(fā)送的實(shí)例索引表;所述實(shí)例索引表中包括已下載所述超級(jí)實(shí)例管理的數(shù)據(jù)塊的所有實(shí)例的索引信息;?
所述實(shí)例從所述實(shí)例索引表中的一個(gè)實(shí)例處獲取所述目標(biāo)數(shù)據(jù)塊。?
本發(fā)明提供的另一種軟件分發(fā)方法,包括:?
軟件倉(cāng)庫(kù)服務(wù)器接收實(shí)例發(fā)送的下載請(qǐng)求,用于請(qǐng)求下載目標(biāo)軟件的目標(biāo)數(shù)據(jù)塊;?
更新所述目標(biāo)軟件的實(shí)例訪問(wèn)表,確定所述目標(biāo)軟件的實(shí)例訪問(wèn)量已達(dá)到組網(wǎng)閾值且所述目標(biāo)軟件的超級(jí)實(shí)例的個(gè)數(shù)已達(dá)到所述目標(biāo)軟件的塊組的個(gè)數(shù)時(shí),向所述實(shí)例發(fā)送所述目標(biāo)軟件的分組表,使所述實(shí)例根據(jù)所述分組表,從所述目標(biāo)數(shù)據(jù)塊所在的塊組對(duì)應(yīng)的超級(jí)實(shí)例獲取所述目標(biāo)數(shù)據(jù)塊的實(shí)例索引表,并從所述實(shí)例索引表中一個(gè)實(shí)例獲取所述目標(biāo)數(shù)據(jù)塊;所述目標(biāo)軟件的數(shù)據(jù)塊劃分為多個(gè)塊組,所述分組表包括塊組與超級(jí)實(shí)例的一一對(duì)應(yīng)關(guān)系;所述目標(biāo)軟件的實(shí)例訪問(wèn)量為請(qǐng)求下載所述目標(biāo)軟件的實(shí)例的個(gè)數(shù);所述實(shí)例索引表中包括已下載所述超級(jí)實(shí)例管理的數(shù)據(jù)塊的所有實(shí)例的索引信息。?
本發(fā)明提供的一種軟件下載裝置,包括:?
分組表判斷模塊,用于下載目標(biāo)軟件的目標(biāo)數(shù)據(jù)塊之前,判斷實(shí)例是否保存有所述目標(biāo)軟件的分組表;?
索引表獲取請(qǐng)求模塊,用于若所述實(shí)例保存有所述目標(biāo)軟件的分組表,?所述實(shí)例在所述分組表中查找到與待下載的目標(biāo)數(shù)據(jù)塊所在塊組對(duì)應(yīng)的目標(biāo)超級(jí)實(shí)例后,向所述目標(biāo)超級(jí)實(shí)例發(fā)送實(shí)例索引表獲取請(qǐng)求,用于請(qǐng)求所述目標(biāo)超級(jí)實(shí)例提供所述目標(biāo)數(shù)據(jù)塊的實(shí)例索引表;所述目標(biāo)軟件的數(shù)據(jù)塊組成多個(gè)塊組,一個(gè)塊組至少包括一個(gè)數(shù)據(jù)塊,所述分組表包括塊組與超級(jí)實(shí)例的一一對(duì)應(yīng)關(guān)系;?
第一下載模塊,用于若所述目標(biāo)超級(jí)實(shí)例確定所述目標(biāo)數(shù)據(jù)塊有對(duì)應(yīng)的實(shí)例索引表,所述實(shí)例接收所述目標(biāo)超級(jí)實(shí)例發(fā)送的實(shí)例索引表,從所述實(shí)例索引表中的一個(gè)實(shí)例處獲取所述目標(biāo)數(shù)據(jù)塊;所述實(shí)例索引表中包括已下載所述超級(jí)實(shí)例管理的數(shù)據(jù)塊的所有實(shí)例的索引信息。?
本發(fā)明提供的一種軟件倉(cāng)庫(kù)服務(wù)器,包括:?
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于北京航空航天大學(xué),未經(jīng)北京航空航天大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110402128.7/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線(xiàn)加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來(lái)擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法
- 電子數(shù)據(jù)分發(fā)系統(tǒng)
- 分發(fā)系統(tǒng)、分發(fā)控制設(shè)備和分發(fā)控制方法
- 分發(fā)方法和分發(fā)系統(tǒng)
- 廣播TS分發(fā)系統(tǒng)、分發(fā)裝置及分發(fā)方法
- 分發(fā)裝置、分發(fā)系統(tǒng)以及分發(fā)方法
- 分發(fā)系統(tǒng)以及分發(fā)方法
- 影像分發(fā)裝置、影像分發(fā)系統(tǒng)、影像分發(fā)方法及存儲(chǔ)介質(zhì)
- 分發(fā)梳齒以及分發(fā)梳
- 向用戶(hù)分發(fā)問(wèn)題的方法及裝置
- 數(shù)據(jù)分發(fā)系統(tǒng)及數(shù)據(jù)分發(fā)方法
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線(xiàn)程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 光源裝置、照明裝置、液晶裝置和電子裝置
- 預(yù)測(cè)裝置、編輯裝置、逆預(yù)測(cè)裝置、解碼裝置及運(yùn)算裝置
- 圖像形成裝置、定影裝置、遮光裝置以及保持裝置
- 打印裝置、讀取裝置、復(fù)合裝置以及打印裝置、讀取裝置、復(fù)合裝置的控制方法
- 電子裝置、光盤(pán)裝置、顯示裝置和攝像裝置
- 光源裝置、照明裝置、曝光裝置和裝置制造方法
- 用戶(hù)裝置、裝置對(duì)裝置用戶(hù)裝置、后端裝置及其定位方法
- 遙控裝置、通信裝置、可變裝置及照明裝置
- 透鏡裝置、攝像裝置、處理裝置和相機(jī)裝置
- 抖動(dòng)校正裝置、驅(qū)動(dòng)裝置、成像裝置、和電子裝置





