專利名稱:更新程序的方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種更新程序的方法和裝置。
背景技術(shù):
在用戶使用應(yīng)用程序的過程中,一般應(yīng)用程序定期需要獲取更新文件以達(dá)到完善自身產(chǎn)品的目的,而如何能夠使應(yīng)用程序及時(shí)的獲取到更新文件就顯得非常重要。特別針對(duì)于安全產(chǎn)品而言,能夠及時(shí)的獲取到殺毒程序,病毒庫(kù),木馬庫(kù)等文件,是保證所有終端能夠快速更新響應(yīng)文件,提高對(duì)病毒的防御能力的一個(gè)很重要的方法,同時(shí)對(duì)于自身產(chǎn)品的漏洞修復(fù),能夠及時(shí)的獲取到修復(fù)程序或文件并生效,也是安全產(chǎn)品快速解決問題,防御病毒的有效手段。在現(xiàn)有技術(shù)中,一般應(yīng)用程序內(nèi)嵌有在線升級(jí)功能,在用戶選擇該功能后,應(yīng)用程序向該應(yīng)用程序服務(wù)器發(fā)送最新版本信息文件的下載請(qǐng)求,在所述下載完成后,應(yīng)用程序通過匹配最新版本信息文件中的版本號(hào)和目前應(yīng)用程序的版本號(hào),就可以判斷出是否有新版本,如果有,則將新版本的信息提示給用戶,然后根據(jù)用戶的選擇開始或取消升級(jí)。在用戶點(diǎn)擊開始升級(jí)后,該應(yīng)用程序向所述服務(wù)器發(fā)送最新版本安裝文件的下載請(qǐng)求,在下載完成后自動(dòng)安裝并覆蓋。使用這種方法更新的前提條件是用戶必須手動(dòng)在程序窗口中點(diǎn)擊操作,如果在發(fā)布應(yīng)用程序的新版本后,用戶由于某些原因沒能及時(shí)點(diǎn)擊執(zhí)行該操作,那么該應(yīng)用程序就不能及時(shí)獲取新版本,進(jìn)而無(wú)法保證安全程序的有效性。
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的更新程序的方法和裝置。本發(fā)明提供了一種更新程序的方法,包括按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息;從所述下載的配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件;使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件??蛇x地,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求包括按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求??蛇x地,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求包括若接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息,則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。可選地,所述使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件包括使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件或
運(yùn)行安裝下載的目標(biāo)文件或?qū)⑾螺d的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄??蛇x地,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求為超文本傳輸協(xié)議HTTP請(qǐng)求??蛇x地,所述目標(biāo)文件的下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要??蛇x地,所述根據(jù)所述下載信息下載目標(biāo)文件具體包括判斷所述下載信息和本地目標(biāo)文件的屬性信息是否一致,若不一致,則按照下載信息中的文件下載路徑下載目標(biāo)文件??蛇x地,所述使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件之前還包括驗(yàn)證所述下載的目標(biāo)文件的信息摘要與從下載的配置文件中獲取的目標(biāo)文件下載信息中對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。相應(yīng)的,本發(fā)明還提供了一種更新程序的裝置,包括下載請(qǐng)求發(fā)送模塊,用于按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;配置文件下載模塊,用于從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息;目標(biāo)文件下載模塊,用于從所述配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件;目標(biāo)文件更新模塊,用于使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。可選地,所述下載請(qǐng)求發(fā)送模塊包括按照預(yù)定時(shí)間發(fā)送單元,用于按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求??蛇x地,所述配置文件下載請(qǐng)求發(fā)送模塊包括按照通知消息發(fā)送單元,用于在接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息后,向服務(wù)器發(fā)送配置文件的下載請(qǐng)求??蛇x地,所述目標(biāo)文件更新模塊包括目標(biāo)文件替換單元,用于使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件;目標(biāo)文件運(yùn)行單元,用于運(yùn)行安裝下載的目標(biāo)文件;目標(biāo)文件存儲(chǔ)單元,用于將下載的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄??蛇x地,所述下載請(qǐng)求發(fā)送模塊按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求為超文本傳輸協(xié)議HTTP請(qǐng)求。可選地,所述目標(biāo)文件的下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要。
可選地,所述目標(biāo)文件下載模塊包括下載信息判斷單元,用于判斷所述下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若一致,中斷當(dāng)前處理;下載單元,用于按照下載信息中的文件下載路徑下載所述目標(biāo)文件??蛇x地,還包括信息摘要驗(yàn)證模塊,用于驗(yàn)證所述下載的目標(biāo)文件的信息摘要與所述下載信息中對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。在現(xiàn)有技術(shù)中,通過用戶手動(dòng)在程序窗口中選擇在線升級(jí)功能實(shí)現(xiàn)更新應(yīng)用程序的目的,所以這種方法不能保證應(yīng)用程序獲取新版本的及時(shí)性。本發(fā)明是通過按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求,從上級(jí)節(jié)點(diǎn)下載配置文件,根據(jù)配置文件中的下載信息下載目標(biāo)文件,使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件的方法保證了應(yīng)用程序能夠自動(dòng)、及時(shí)的獲取新版本,進(jìn)而保證了安全程序的有效性。上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉本發(fā)明的具體實(shí)施方式
。
通過閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中圖1是本發(fā)明一種部署程序的方法的實(shí)施例一的流程示意圖;圖2是本發(fā)明實(shí)施例中一多級(jí)控制節(jié)點(diǎn)示例的結(jié)構(gòu)示意圖;圖3是本發(fā)明一種部署程序的方法的實(shí)施例二的流程示意圖;圖4是本發(fā)明一種更新程序的方法的實(shí)施例的流程示意圖;圖5是本發(fā)明一種三級(jí)結(jié)構(gòu)的企業(yè)網(wǎng)絡(luò)環(huán)境的結(jié)構(gòu)示意圖;圖6是本發(fā)明一種部署程序的裝置的實(shí)施例的結(jié)構(gòu)示意圖;圖7是本發(fā)明一種更新程序的裝置的實(shí)施例的結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。參照?qǐng)D1,示出了本發(fā)明一種基于控制節(jié)點(diǎn)部署程序的方法實(shí)施例一的流程示意圖。該實(shí)施例具體包括步驟101 :設(shè)置與本地目標(biāo)文件對(duì)應(yīng)的本地配置文件,所述本地配置文件預(yù)置有所述本地目標(biāo)文件的下載信息。本發(fā)明所描述的目標(biāo)文件可以包括一類是用來安裝應(yīng)用程序新版本的可執(zhí)行文件,如EXE、JAVA、MSI或者蘋果操作系統(tǒng)下的DMG、DEB、IPA或PXL等格式的文件;另一類是用來替換應(yīng)用程序安裝目錄中的相應(yīng)數(shù)據(jù)的文件,如DAT或DLL等;還可以是應(yīng)用程序需要的其它更新文件,例如病毒庫(kù)文件等,該文件可以為任何格式。配置文件記錄了目標(biāo)文件的下載信息,其文件格式可以是I N1、JSON或其他格式。在本實(shí)施例中下載信息至少包括文件下載路徑和文件標(biāo)識(shí),進(jìn)一步的,該下載信息還可以包括文件版本、文件校驗(yàn)碼等信息。所述文件標(biāo)識(shí)用于唯一確定一個(gè)文件,可以是文件名稱、文件信息摘要(Message Digest, MD)等。其中,文件信息摘要是經(jīng)信息摘要算法(Message Digest Algorithm)計(jì)算產(chǎn)生,用于確保信息傳輸完整一致,該算法是計(jì)算機(jī)安全領(lǐng)域廣泛使用的算法之一,目前已發(fā)展至信息摘要算法第五版(MessageDigestAlgorithm,MD5)。當(dāng)然,本領(lǐng)域技術(shù)人員應(yīng)當(dāng)理解,使用其他信息摘要算法來產(chǎn)生本發(fā)明實(shí)施例中公開的文件信息摘要也是可以的,本發(fā)明對(duì)此不作限制。為了便于描述,以下均使用MD5或MD5值表示文件信息摘要。本發(fā)明所描述的本地目標(biāo)文件和本地配置文件可存儲(chǔ)于本地同一臺(tái)服務(wù)器或服務(wù)器集群中的某個(gè)服務(wù)器節(jié)點(diǎn)。其中,所述設(shè)置與本地目標(biāo)文件對(duì)應(yīng)的本地配置文件的方法包括當(dāng)不存在本地配置文件時(shí),則創(chuàng)建一個(gè)本地配置文件;當(dāng)存在本地配置文件時(shí),則根據(jù)本地目標(biāo)文件的變化更新對(duì)應(yīng)的本地配置文件。步驟102 :接收來自下級(jí)節(jié)點(diǎn)的本地配置文件下載請(qǐng)求。節(jié)點(diǎn)可以是普通計(jì)算機(jī)終端、移動(dòng)終端、服務(wù)器,或其它具有數(shù)據(jù)處理功能的通信節(jié)點(diǎn)。所謂下級(jí)節(jié)點(diǎn)是與本地節(jié)點(diǎn)相對(duì)而言的,例如,向本地節(jié)點(diǎn)發(fā)送文件下載請(qǐng)求的終端或服務(wù)器即為下級(jí)節(jié)點(diǎn)。反之,接收本地節(jié)點(diǎn)所發(fā)送的文件下載請(qǐng)求的服務(wù)器即為上級(jí)節(jié)點(diǎn)。本文所描述的控制節(jié)點(diǎn)即為控制向下級(jí)節(jié)點(diǎn)部署程序的節(jié)點(diǎn)。本領(lǐng)域技術(shù)人員應(yīng)該理解,可根據(jù)需要建立包括多層級(jí)控制節(jié)點(diǎn)的控制節(jié)點(diǎn)群組。參照?qǐng)D2,示出了本發(fā)明控制節(jié)點(diǎn)群組示例的結(jié)構(gòu)示意圖,如圖2所示,控制節(jié)點(diǎn)210向與之連接的次級(jí)控制節(jié)點(diǎn)221、次級(jí)控制節(jié)點(diǎn)222和終端部署程序,進(jìn)一步的,所述次級(jí)控制節(jié)點(diǎn)222控制對(duì)應(yīng)的子控制節(jié)點(diǎn)232和終端節(jié)點(diǎn)231并向其部署程序。步驟103 :將所述本地配置文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。下級(jí)節(jié)點(diǎn)發(fā)送的下載請(qǐng)求中包含有下級(jí)節(jié)點(diǎn)的地址信息,當(dāng)接收到來自下級(jí)節(jié)點(diǎn)的本地配置文件下載請(qǐng)求后,通過下載請(qǐng)求中的地址信息便可將本地配置文件準(zhǔn)確的發(fā)往下級(jí)節(jié)點(diǎn)。步驟104 :接收來自下級(jí)節(jié)點(diǎn)的本地目標(biāo)文件下載請(qǐng)求。步驟105 :將所述本地目標(biāo)文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。在上述實(shí)施例一中,本地節(jié)點(diǎn)接收來自下級(jí)節(jié)點(diǎn)的配置文件下載請(qǐng)求,并向下級(jí)節(jié)點(diǎn)發(fā)送目標(biāo)文件。在本發(fā)明的另一優(yōu)選實(shí)施例中,本地節(jié)點(diǎn)也可從上級(jí)節(jié)點(diǎn)獲取新的目標(biāo)文件以更新本地目標(biāo)文件。下面參照?qǐng)D3,對(duì)本發(fā)明一種部署程序的方法實(shí)施例二進(jìn)行具體描述步驟301 :按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求可包括以下方法一,按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求,該預(yù)定時(shí)間可由本領(lǐng)域技術(shù)人員在實(shí)施本發(fā)明時(shí)根據(jù)實(shí)際需要確定,例如服務(wù)器隨機(jī)抽取的時(shí)間或指定的時(shí)間周期或在用戶執(zhí)行某項(xiàng)相關(guān)操作之后等;方法二,若接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息,則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。在本發(fā)明另一優(yōu)選實(shí)施例中,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求為超文本傳輸協(xié)議(Hypertext Transport Protocol, HTTP)請(qǐng)求。這種HTTP請(qǐng)求屬于短連接,下載完成后即斷開,可以有效減少對(duì)寬帶的占用。步驟302 :從所述上級(jí)節(jié)點(diǎn)下載所述配置文件。步驟303 :根據(jù)所述配置文件中的文件下載路徑下載目標(biāo)文件。配置文件中記載了目標(biāo)文件的下載信息,包括文件下載路徑、文件名稱、文件版本、文件MD5等。以下是配置文件的一段內(nèi)容示例[123. exe]//目標(biāo)文件名稱instver = 6. 6// 目標(biāo)文件版本checks ign =1//目標(biāo)文件校驗(yàn)標(biāo)識(shí) md5 = E0F78CC20// 目標(biāo)文件 MD5path = % productpath% \publish\UpdatePacks// 目標(biāo)文件存儲(chǔ)路徑urI = pdown://h2 = 70 | h8 = I | cl = 0 | k = I | http : //down. 123. cn/update/123. exe_2.1. 0. 2081. cab// 目標(biāo)文件下載路徑ver = 2.1. 0. 2018// 應(yīng)用程序版本從上級(jí)節(jié)點(diǎn)下載所述配置文件,并從該配置文件中獲取目標(biāo)文件下載路徑信息,然后按照該信息下載目標(biāo)文件。使用本實(shí)施例所描述的方法部署程序時(shí),如果下載的目標(biāo)文件和本地目標(biāo)文件相同,則上述下載過程就造成了服務(wù)器資源的浪費(fèi);與此同時(shí),使用下載的目標(biāo)文件更新本地相同的目標(biāo)文件也給自身造成了額外系統(tǒng)消耗。為了避免這種問題,在本發(fā)明另一優(yōu)選實(shí)施例中,步驟203進(jìn)一步包括判斷所述配置文件中的下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若不一致,則按照所述配置文件中的文件下載路徑下載目標(biāo)文件。本地目標(biāo)文件的屬性信息包括本地目標(biāo)文件的名稱和/或本地目標(biāo)文件的版本和/或本地目標(biāo)文件的MD5值等。比較配置文件中記載的文件名、文件MD5等下載信息與本地目標(biāo)文件屬性信息中的對(duì)應(yīng)項(xiàng)是否一致,若一致,則說明下載的目標(biāo)文件和本地目標(biāo)文件為同一文件,無(wú)需再次下載,因此有效避免了對(duì)服務(wù)器的重復(fù)請(qǐng)求和系統(tǒng)資源浪費(fèi)。若不一致,則說明為不同文件,此時(shí)按照所述配置文件中的文件下載路徑下載目標(biāo)文件。步驟304 :使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。其中,使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件的方法包括方法一,使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件; 方法二,將下載的目標(biāo)文件追加到對(duì)應(yīng)的本地目標(biāo)文件的存儲(chǔ)目錄中。在下載目標(biāo)文件的過程中,可能會(huì)出現(xiàn)由于文件數(shù)據(jù)丟失或文件被篡改等原因造成的文件不合法的情況,為了避免使用不合法目標(biāo)文件更新本地目標(biāo)文件,在本發(fā)明另一優(yōu)選實(shí)施例中,在本步驟之前還包括
驗(yàn)證所述下載的目標(biāo)文件的MD5值與所述配置文件中的下載信息對(duì)應(yīng)的MD5值是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。步驟305 :根據(jù)所述下載的配置文件中的下載信息更新本地配置文件。本發(fā)明實(shí)施例所描述的更新本地配置文件的方法包括使用下載的配置文件中的文件名稱、文件版本、文件MD5等下載信息替換本地配置文件中的對(duì)應(yīng)項(xiàng);根據(jù)本地目標(biāo)文件的存儲(chǔ)路徑更新本地配置文件中的文件下載路徑。一般情況下,應(yīng)用程序的更新文件有兩種類型一種是應(yīng)用程序新版本的安裝文件,另一種是針對(duì)應(yīng)用程序某一部分的更新文件,例如補(bǔ)丁文件。當(dāng)下載的目標(biāo)文件為第一種類型時(shí),使用本發(fā)明實(shí)施例提供的方法就可以實(shí)現(xiàn)對(duì)應(yīng)用程序的完整更新。而如果下載的目標(biāo)文件為第二種類型,并且在與上級(jí)節(jié)點(diǎn)失去連接的一段時(shí)間里,上級(jí)節(jié)點(diǎn)發(fā)布了多個(gè)針對(duì)應(yīng)用程序不同部分的更新文件,在這種情況下,即使重現(xiàn)連接并使用本發(fā)明實(shí)施例提供的方法也只能獲取到最近一次的更新文件,于是就錯(cuò)失了針對(duì)應(yīng)用程序其它部分的更新文件,從而不能實(shí)現(xiàn)對(duì)當(dāng)前應(yīng)用程序的完整更新。為了解決這一問題,在本發(fā)明另一優(yōu)選實(shí)施例中,采用以下方法更新本地配置文件將下載的配置文件中的文件名稱、文件下載路徑、文件版本、文件MD5等下載信息追加到本地配置文件中;根據(jù)本地目標(biāo)文件的存儲(chǔ)路徑更新本地配置文件中的對(duì)應(yīng)的文件下載路徑。使用這種追加的方法更新本地配置文件,從上級(jí)節(jié)點(diǎn)下載的配置文件就包含有上述多個(gè)不同的第二種類型的目標(biāo)文件的下載信息,同時(shí)本地配置文件就包含有所有本地目標(biāo)文件的下載信息,此時(shí)通過使用本發(fā)明提供的方法便可完成對(duì)當(dāng)前應(yīng)用程序的完整更新。為了讓下級(jí)節(jié)點(diǎn)能夠獲取到上述多個(gè)不同的第二種類型的目標(biāo)文件,在該實(shí)施例中更新本地目標(biāo)文件的方法為將下載的目標(biāo)文件追加到對(duì)應(yīng)的本地目標(biāo)文件的存儲(chǔ)目錄中。在本發(fā)明另一優(yōu)選實(shí)施例中,在步驟305之后還包括向下級(jí)節(jié)點(diǎn)發(fā)送本地配置文件更新的通知消息。僅當(dāng)下級(jí)節(jié)點(diǎn)接收到所述本地配置文件更新的通知消息時(shí),下級(jí)節(jié)點(diǎn)才發(fā)送配置文件的下載請(qǐng)求。通過這樣的方法避免了下級(jí)節(jié)點(diǎn)發(fā)送無(wú)效下載請(qǐng)求的情況,進(jìn)而大大減少了下級(jí)節(jié)點(diǎn)下載請(qǐng)求的發(fā)送量。因此這一方法有效降低了服務(wù)器需要處理的信息量以及對(duì)寬帶的占用量。步驟306 :接收來自下級(jí)節(jié)點(diǎn)的本地配置文件下載請(qǐng)求。步驟307 :將所述本地配置文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。步驟308 :接收來自下級(jí)節(jié)點(diǎn)的本地目標(biāo)文件下載請(qǐng)求。步驟309 :將所述本地目標(biāo)文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。參照?qǐng)D4,示出了本發(fā)明一種更新程序的方法實(shí)施例的流程示意圖。該實(shí)施例具體包括步驟401 :按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求可包括以下方法
方法一,按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求,該預(yù)定時(shí)間可由本領(lǐng)域技術(shù)人員在實(shí)施本發(fā)明時(shí)根據(jù)實(shí)際需要確定,例如服務(wù)器隨機(jī)抽取的時(shí)間或指定的時(shí)間周期或在用戶執(zhí)行某項(xiàng)相關(guān)操作之后等;方法二,若接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息,則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。步驟402 :從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息。步驟403 :從所述配置文件中獲取目標(biāo)文件的文件下載路徑,根據(jù)所述文件下載路徑下載目標(biāo)文件。在本發(fā)明另一優(yōu)選實(shí)施例中,本步驟具體包括判斷所述下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若不一致,則從所述配置文件中獲取目標(biāo)文件的文件下載路徑,根據(jù)所述文件下載路徑下載目標(biāo)文件。步驟404 :使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。具體的,使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件的方法可以是使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件、運(yùn)行安裝下載的目標(biāo)文件或?qū)⑾螺d的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄。在本發(fā)明另一優(yōu)選實(shí)施例中,在本步驟之前還包括驗(yàn)證所述下載的目標(biāo)文件的MD5值與所述下載信息中對(duì)應(yīng)的MD5值是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。為了便于本領(lǐng)域技術(shù)人員更好的理解本發(fā)明的內(nèi)容,下面以在企業(yè)網(wǎng)絡(luò)環(huán)境中部署殺毒軟件程序作為示例對(duì)本發(fā)明的方法做進(jìn)一步詳細(xì)描述。如圖5所示,該企業(yè)網(wǎng)絡(luò)環(huán)境為三級(jí)結(jié)構(gòu),具體包括第一級(jí)為殺毒軟件服務(wù)器S10,用于監(jiān)聽企業(yè)內(nèi)部服務(wù)器S20的下載請(qǐng)求以及發(fā)送對(duì)應(yīng)的本地文件;第二級(jí)為企業(yè)內(nèi)部服務(wù)器S20,該服務(wù)器安裝有該殺毒軟件服務(wù)器版,用于向殺毒軟件服務(wù)器SlO發(fā)送下載請(qǐng)求以及使用下載的文件更新對(duì)應(yīng)的本地文件,還用于監(jiān)聽終端ClO的下載請(qǐng)求并發(fā)送對(duì)應(yīng)的本地文件;第三級(jí)為與企業(yè)內(nèi)部服務(wù)器S20連接的終端C10、終端C20和終端C30,終端CIO、C20和C30上安裝有該殺毒軟件終端版,用于向企業(yè)內(nèi)部服務(wù)器S20發(fā)送下載請(qǐng)求并使用下載的文件更新對(duì)應(yīng)的本地文件。下面以向終端ClO部署殺毒軟件為例對(duì)本發(fā)明實(shí)施做進(jìn)一步描述在殺毒軟件服務(wù)器SlO上存在一個(gè)配置文件SlO-config.1ni,這個(gè)配置文件描述了所要推送的文件的下載信息,該下載信息包括文件下載路徑,文件名稱、文件MD5,文件版本等。下面給出一個(gè)配置文件SlO-config的例子,該配置文件包含兩個(gè)更新文件的下載信息,第一個(gè)更新文件為殺毒軟件新版本的安裝文件[Os. exe],第二個(gè)更新文件為病毒庫(kù)更新文件
。該配置文件的內(nèi)容如下[entclientpush]filesO = Os. exe,0s_k. dat,name = Os企業(yè)版客戶端推送[conf ig]
[Os. exe]// 文件名稱ins tver = 6. 6// 文件版本checks i gn = I// 文件校驗(yàn)標(biāo)識(shí)md5 = E0F67TT10//文件 MD5path =% productpath% \EntAdmin\UpdatePacks// 文件存儲(chǔ)路徑url = pdown://h2 = 70 | h8 = 11 cl = 0 | k = 11 http://down. Os. cn/update/Os.exe—2.1. 2081. cab//文件下載路徑ver = 2.1. 2018// 殺毒軟件版本
// 文件名稱instver = 3. 6// 文件版本checksign =1// 文件校驗(yàn)標(biāo)識(shí)md5 = E0F78SS33// 文件 MD5path = % productpath% \EntAdmin\UpdatePacks// 文件存儲(chǔ)路徑url = pdown://h2 = 70 | h8 = 11 cl = 0 | k = 11 http://down. Os. cn/update/0s_k. dat_l. 6. 1988. c ab// 文件下載路徑ver =1. 6. 1963// 病毒庫(kù)版本在上述企業(yè)網(wǎng)絡(luò)環(huán)境下,向終端ClO部署殺毒軟件的具體過程如下Q1、技術(shù)人員將需要部署的目標(biāo)文件發(fā)布到服務(wù)器S10。將目標(biāo)文件[Os. exe]和
存儲(chǔ)到服務(wù)器S10,同時(shí)更新服務(wù)器SlO上配置文件SlO-config中的下載信息,包括文件名稱、文件版本、文件MD5、文件下載路徑等。Q2、服務(wù)器S20上的殺毒軟件服務(wù)器版程序在運(yùn)行過程中,定時(shí)向服務(wù)器SlO發(fā)送配置文件SlO-config的下載請(qǐng)求。服務(wù)器S20向服務(wù)器SlO發(fā)送下載請(qǐng)求的時(shí)間是技術(shù)人員設(shè)定的,可以是任意時(shí)亥IJ。在本示例中,技術(shù)人員為了避免影響上班時(shí)間服務(wù)器S20的信息處理效率,將服務(wù)器S20向服務(wù)器SlO發(fā)送下載請(qǐng)求的時(shí)間設(shè)定為每天的22:00。Q3、服務(wù)器S20下載服務(wù)器SlO上的配置文件SlO-config。Q4、服務(wù)器S20判斷下載的配置文件SlO-config中記載的下載信息和服務(wù)器S20存儲(chǔ)的本地文件的屬性信息是否一致,若不一致,才說明服務(wù)器S20需要從服務(wù)器SlO上下載目標(biāo)文件。在本示例中,因?yàn)榉?wù)器S20上的本地配置文件S20-config記載了服務(wù)器S20上的本地目標(biāo)文件的下載信息,所以為了提高判斷效率,采用以下方法通過匹配下載的配置文件SlO-config中記錄的文件名稱和服務(wù)器S20上的本地配置文件S20_config中記載的文件名稱,發(fā)現(xiàn)服務(wù)器S20上存在本地目標(biāo)文件[Os. exe],而不存在
;進(jìn)一步判斷配置文件SlO-config中記載的文件版本、文件MD5等下載信息和本地配置文件S20-config中的對(duì)應(yīng)項(xiàng)是否一致,通過比較發(fā)現(xiàn)配置文件SlO-config中記載的[Os. exe]文件版本為6. 6,而本地配置文件S20_config中記載的[Os. exe]文件版本為5. 5,說明了服務(wù)器S20需要從服務(wù)器SlO上下載目標(biāo)文件[Os. exe];另外,由于服務(wù)器S20本地不存在
,因此也需從服務(wù)器SlO下載該文件。
Q5、服務(wù)器S20下載目標(biāo)文件。服務(wù)器S20根據(jù)下載的配置文件SlO-config中的文件下載路徑下載服務(wù)器SlO上的目標(biāo)文件[Os. exe]和
。Q6、服務(wù)器S20判斷下載的目標(biāo)文件的合法性。判斷下載的目標(biāo)文件
以及
的MD5和配置文件SlO-config對(duì)應(yīng)的下載信息中的文件MD5是否一致。判斷結(jié)果為一致表明目標(biāo)文件合法,可以使用該目標(biāo)文件對(duì)服務(wù)器S20上的本地目標(biāo)文件進(jìn)行更新;判斷結(jié)果為不一致表明目標(biāo)文件不合法,則需中斷當(dāng)前進(jìn)程。在本示例中判斷結(jié)果為一致,表明目標(biāo)文件[Os. exe]和
都是合法的。Q7、服務(wù)器S20使用下載的目標(biāo)文件更新本地目標(biāo)文件。使用從服務(wù)器SlO下載的目標(biāo)文件
替換服務(wù)器S20上的本地目標(biāo)文件[Os. exe];將從服務(wù)器SlO下載的目標(biāo)文件
存儲(chǔ)在服務(wù)器S20上的病毒庫(kù)更新文件目錄中。Q8、服務(wù)器S20根據(jù)下載的配置文件SlO-config中的下載信息更新本地配置文件S20-configo使用下載的配置文件SlO-config中目標(biāo)文件[Os. exe]的文件版本、文件MD5、殺毒軟件版本替換服務(wù)器S20上的本地配置文件S20-config中記載的本地目標(biāo)文件[Os.exe]下載信息中的對(duì)應(yīng)項(xiàng); 將下載的配置文件SlO-config中目標(biāo)文件
的下載信息追加到服務(wù)器S20上的本地配置文件S20-config中,同時(shí)根據(jù)目標(biāo)文件
在服務(wù)器S20上的存儲(chǔ)路徑對(duì)本地配置文件S20-config中目標(biāo)文件
的文件存儲(chǔ)路徑和文件下載路徑進(jìn)行修改。Q9、服務(wù)器S20上的本地配置文件S20_config被更新后,服務(wù)器S20向與之連接的終端ClO發(fā)送通知消息。Q10、終端ClO接收到服務(wù)器S20的通知消息后,向服務(wù)器S20發(fā)送配置文件S20-config的下載請(qǐng)求。Q11、終端ClO下載服務(wù)器S20上的配置文件S20_config。Q12、終端ClO判斷下載的配置文件S20-config中的版本信息和本地目標(biāo)文件的
版本信息的一致性。比較下載的配置文件S20_config中
的殺毒軟件版本以及
的病毒庫(kù)版本和終端上本地目標(biāo)文件的殺毒軟件版本以及病毒庫(kù)版本,通過比較發(fā)現(xiàn)服務(wù)器S20上目標(biāo)文件[Os. exe]的殺毒軟件版本為2.1. 2018,
的病毒庫(kù)版本為1. 6. 1963,而本地目標(biāo)文件的殺毒軟件版本為2.1. 2012,病毒庫(kù)版本為1. 6. 1960,說明了終端ClO需要從服務(wù)器S20下載目標(biāo)文件[Os. exe]和
。Q13、終端ClO將服務(wù)器S20上的目標(biāo)文件[Os. exe]和
下載到終端C10,并使用本示例上述檢驗(yàn)方法檢驗(yàn)?zāi)繕?biāo)文件的合法性,檢驗(yàn)結(jié)果為合法。Q14、終端ClO自動(dòng)運(yùn)行安裝下載的目標(biāo)文件
,同時(shí)終端ClO使用目標(biāo)文件
替換存儲(chǔ)在終端ClO上的病毒庫(kù)文件。使用這種方法推送文件有以下優(yōu)點(diǎn)
Y1、企業(yè)內(nèi)部服務(wù)器S20、終端ClO通過HTTP請(qǐng)求的方式來下載配置文件,這種HTTP請(qǐng)求屬于短連接,下載文件后即斷開,這樣不需要企業(yè)內(nèi)部服務(wù)器S20和殺毒軟件服務(wù)器SlO以及終端ClO和企業(yè)內(nèi)部服務(wù)器S20保持長(zhǎng)鏈接,提高殺毒軟件服務(wù)器S10、企業(yè)內(nèi)部服務(wù)器S20的下載請(qǐng)求的吞吐量,同時(shí)因?yàn)槠髽I(yè)內(nèi)部服務(wù)器S20、終端ClO是定時(shí)來請(qǐng)求下載文件,結(jié)束后即斷開,可以減少對(duì)帶寬的占用。Y2、企業(yè)內(nèi)部服務(wù)器S20、終端ClO每次只需要向殺毒軟件服務(wù)器S10、企業(yè)內(nèi)部服務(wù)器S20請(qǐng)求下載配置文件,即可知道是否有推送的新文件,而不需要將目標(biāo)文件全部下載下來再來判斷是否是新文件,這樣可以大大減少對(duì)帶寬的占用。Y3、企業(yè)內(nèi)部服務(wù)器S20向與之連接的終端ClO提供更新服務(wù),終端ClO可以直接從企業(yè)內(nèi)部服務(wù)器S20來下載推送的更新文件,不需要向殺毒軟件服務(wù)器SlO來下載更新文件,內(nèi)網(wǎng)的文件下載,將大大提高下載速度,并減少對(duì)帶寬的占用。Y4、企業(yè)內(nèi)部服務(wù)器S20、終端ClO發(fā)現(xiàn)有更新文件推送,下載該文件后會(huì)進(jìn)行相關(guān)的文件合法性驗(yàn)證,包括MD5驗(yàn)證,簽名驗(yàn)證等,可以有效避免使用下載失敗或下載地址被劫持等原因?qū)е碌牟徽_文件。Y5、企業(yè)內(nèi)部服務(wù)器S20、終端ClO是通過HTTP請(qǐng)求來下載配置文件的,即使一段時(shí)間沒有連接殺毒軟件服務(wù)器S10、企業(yè)內(nèi)部服務(wù)器S20,當(dāng)再次下載到最新的配置文件后,通過比較可以獲取這段時(shí)間所有推送的更新文件的下載信息,不會(huì)因?yàn)橐欢螘r(shí)間失去連接而丟失推送的更新文件。Y6、企業(yè)內(nèi)部服務(wù)器S20支持多級(jí)部署,二級(jí)服務(wù)器連線企業(yè)內(nèi)部服務(wù)器S20,三級(jí)服務(wù)器連線二級(jí)服務(wù)器,通過這樣的多級(jí)部署可以降低企業(yè)內(nèi)部服務(wù)器S20的終端ClO連接數(shù)量,從而提高處理能力。通過多級(jí)部署,企業(yè)內(nèi)部服務(wù)器S20可以支持無(wú)限個(gè)終端。參照?qǐng)D6,示出了本發(fā)明一種部署程序的裝置實(shí)施例的結(jié)構(gòu)示意圖。該實(shí)施例具體包括本地配置文件設(shè)置模塊601,用于設(shè)置與本地目標(biāo)文件對(duì)應(yīng)的本地配置文件,所述本地配置文件預(yù)置有所述本地目標(biāo)文件的下載信息。其中,所述下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要等。本地配置文件下載請(qǐng)求接收模塊602,用于接收來自下級(jí)節(jié)點(diǎn)的本地配置文件下載請(qǐng)求。本地配置文件發(fā)送模塊603,用于將所述本地配置文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。 本地目標(biāo)文件下載請(qǐng)求接收模塊604,用于接收來自下級(jí)節(jié)點(diǎn)的本地目標(biāo)文件下載請(qǐng)求。本地目標(biāo)文件發(fā)送模塊605,將所述本地目標(biāo)文件發(fā)送至所述下級(jí)節(jié)點(diǎn)。在本發(fā)明另一優(yōu)選實(shí)施例中,所述本地配置文件設(shè)置模塊601,還用于更新與本地目標(biāo)文件對(duì)應(yīng)的本地配置文件。所述本地配置文件設(shè)置模塊601包括下載請(qǐng)求發(fā)送子模塊6011,用于按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。其中,所述下載請(qǐng)求為HTTP請(qǐng)求。
所述下載請(qǐng)求發(fā)送子模塊6011包括按照預(yù)定時(shí)間發(fā)送單元60111,用于按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;按照通知消息發(fā)送單元60112,用于在接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息后,向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。配置文件下載子模塊6012,用于從所述上級(jí)節(jié)點(diǎn)下載所述配置文件。目標(biāo)文件下載子模塊6013,用于根據(jù)所述配置文件中的下載信息下載目標(biāo)文件。其中,目標(biāo)文件下載子模塊6013包括下載信息判斷單元60131,用于判斷所述配置文件中的下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若一致,則中斷當(dāng)前處理;下載單元60132,用于按照配置文件中的文件下載路徑下載目標(biāo)文件。目標(biāo)文件更新子模塊6014,用于使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。其中,所述目標(biāo)文件更新子模塊6014包括目標(biāo)文件替換單元60141,用于使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件;目標(biāo)文件追加單元60142,用于將下載的目標(biāo)文件追加到對(duì)應(yīng)的本地目標(biāo)文件的存儲(chǔ)目錄中。本地配置文件更新子模塊6015,用于根據(jù)下載的配置文件中的下載信息更新本地配置文件。在本發(fā)明另一優(yōu)選實(shí)施例中,該部署程序裝置還包括通知消息發(fā)送模塊606,該模塊用于向下級(jí)節(jié)點(diǎn)發(fā)送本地配置文件更新的通知消息。在本發(fā)明另一優(yōu)選實(shí)施例中,該部署程序裝置還包括信息摘要驗(yàn)證模塊607,該模塊用于驗(yàn)證所述下載的目標(biāo)文件的信息摘要與所述配置文件中的下載信息對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。參照?qǐng)D7,示出了本發(fā)明一種更新程序的裝置實(shí)施例的結(jié)構(gòu)示意圖。該實(shí)施例具體包括下載請(qǐng)求發(fā)送模塊701,用于按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。其中,所述下載請(qǐng)求為HTTP請(qǐng)求。所述下載請(qǐng)求發(fā)送模塊701包括按照預(yù)定時(shí)間發(fā)送單元7011,用于按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;按照通知消息發(fā)送單元7012,用于在接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息后,向服務(wù)器發(fā)送配置文件的下載請(qǐng)求。配置文件下載模塊702,用于從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息。其中,所述下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要等。目標(biāo)文件下載模塊703,用于從所述配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件。其中,目標(biāo)文件下載模塊703包括
下載信息判斷單元7031,用于判斷所述配置文件中的下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若一致,則中斷當(dāng)前處理;下載單元7032,用于按照配置文件中的文件下載路徑下載目標(biāo)文件。目標(biāo)文件更新模塊704,用于使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。其中,所述目標(biāo)文件更新模塊704包括目標(biāo)文件替換單元7041,用于使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件;目標(biāo)文件運(yùn)行單元7042,用于運(yùn)行安裝下載的目標(biāo)文件;目標(biāo)文件存儲(chǔ)單元7043,用于將下載的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄。在本發(fā)明另一優(yōu)選實(shí)施例中,該更新程序裝置還包括信息摘要驗(yàn)證模塊705,該模塊用于驗(yàn)證所述下載的目標(biāo)文件的信息摘要與所述配置文件中的下載信息對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。在此提供的算法和顯示不與任何特定計(jì)算機(jī)、虛擬系統(tǒng)或者其它設(shè)備固有相關(guān)。各種通用系統(tǒng)也可以與基于在此的示教一起使用。根據(jù)上面的描述,構(gòu)造這類系統(tǒng)所要求的結(jié)構(gòu)是顯而易見的。此外,本發(fā)明也不針對(duì)任何特定編程語(yǔ)言。應(yīng)當(dāng)明白,可以利用各種編程語(yǔ)言實(shí)現(xiàn)在此描述的本發(fā)明的內(nèi)容,并且上面對(duì)特定語(yǔ)言所做的描述是為了披露本發(fā)明的最佳實(shí)施方式。在此處所提供的說明書中,說明了大量具體細(xì)節(jié)。然而,能夠理解,本發(fā)明的實(shí)施例可以在沒有這些具體細(xì)節(jié)的情況下實(shí)踐。在一些實(shí)例中,并未詳細(xì)示出公知的方法、結(jié)構(gòu)和技術(shù),以便不模糊對(duì)本說明書的理解。類似地,應(yīng)當(dāng)理解,為了精簡(jiǎn)本公開并幫助理解各個(gè)發(fā)明方面中的一個(gè)或多個(gè),在上面對(duì)本發(fā)明的示例性實(shí)施例的描述中,本發(fā)明的各個(gè)特征有時(shí)被一起分組到單個(gè)實(shí)施例、圖、或者對(duì)其的描述中。然而,并不應(yīng)將該公開的方法解釋成反映如下意圖即所要求保護(hù)的本發(fā)明要求比在每個(gè)權(quán)利要求中所明確記載的特征更多的特征。更確切地說,如下面的權(quán)利要求書所反映的那樣,發(fā)明方面在于少于前面公開的單個(gè)實(shí)施例的所有特征。因此,遵循具體實(shí)施方式
的權(quán)利要求書由此明確地并入該具體實(shí)施方式
,其中每個(gè)權(quán)利要求本身都作為本發(fā)明的單獨(dú)實(shí)施例。本領(lǐng)域那些技術(shù)人員可以理解,可以對(duì)實(shí)施例中的設(shè)備中的模塊進(jìn)行自適應(yīng)性地改變并且把它們?cè)O(shè)置在與該實(shí)施例不同的一個(gè)或多個(gè)設(shè)備中??梢园褜?shí)施例中的模塊或單元或組件組合成一個(gè)模塊或單元或組件,以及此外可以把它們分成多個(gè)子模塊或子單元或子組件。除了這樣的特征和/或過程或者單元中的至少一些是相互排斥之外,可以采用任何組合對(duì)本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的所有特征以及如此公開的任何方法或者設(shè)備的所有過程或單元進(jìn)行組合。除非另外明確陳述,本說明書(包括伴隨的權(quán)利要求、摘要和附圖)中公開的每個(gè)特征可以由提供相同、等同或相似目的替代特征來代替。此外,本領(lǐng)域的技術(shù)人員能夠理解,盡管在此所述的一些實(shí)施例包括其它實(shí)施例中所包括的某些特征而不是其它特征,但是不同實(shí)施例的特征的組合意味著處于本發(fā)明的范圍之內(nèi)并且形成不同的實(shí)施例。例如,在下面的權(quán)利要求書中,所要求保護(hù)的實(shí)施例的任意之一都可以以任意的組合方式來使用。本發(fā)明的各個(gè)部件實(shí)施例可以以硬件實(shí)現(xiàn),或者以在一個(gè)或者多個(gè)處理器上運(yùn)行的軟件模塊實(shí)現(xiàn),或者以它們的組合實(shí)現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,可以在實(shí)踐中使用微處理器或者數(shù)字信號(hào)處理器(DSP)來實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的更新程序的裝置中的一些或者全部部件的一些或者全部功能。本發(fā)明還可以實(shí)現(xiàn)為用于執(zhí)行這里所描述的方法的一部分或者全部的設(shè)備或者裝置程序(例如,計(jì)算機(jī)程序和計(jì)算機(jī)程序產(chǎn)品)。這樣的實(shí)現(xiàn)本發(fā)明的程序可以存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)上,或者可以具有一個(gè)或者多個(gè)信號(hào)的形式。這樣的信號(hào)可以從因特網(wǎng)網(wǎng)站上下載得到,或者在載體信號(hào)上提供,或者以任何其他形式提供。應(yīng)該注意的是上述實(shí)施例對(duì)本發(fā)明進(jìn)行說明而不是對(duì)本發(fā)明進(jìn)行限制,并且本領(lǐng)域技術(shù)人員在不脫離所附權(quán)利要求的范圍的情況下可設(shè)計(jì)出替換實(shí)施例。在權(quán)利要求中,不應(yīng)將位于括號(hào)之間的任何參考符號(hào)構(gòu)造成對(duì)權(quán)利要求的限制。單詞“包含”不排除存在未列在權(quán)利要求中的元件或步驟。位于元件之前的單詞“一”或“一個(gè)”不排除存在多個(gè)這樣的元件。本發(fā)明可以借助于包括有若干不同元件的硬件以及借助于適當(dāng)編程的計(jì)算機(jī)來實(shí)現(xiàn)。在列舉了若干裝置的單元權(quán)利要求中,這些裝置中的若干個(gè)可以是通過同一個(gè)硬件項(xiàng)來具體體現(xiàn)。單詞第一、第二、以及第三等的使用不表示任何順序。可將這些單詞解釋為名稱。
權(quán)利要求
1.一種更新程序的方法,包括按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息;從所述下載的配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件;使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。
2.根據(jù)權(quán)利要求1所述的方法,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求包括按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。
3.根據(jù)權(quán)利要求1所述的方法,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求包括若接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息,則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。
4.根據(jù)權(quán)利要求1所述的方法,所述使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件包括使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件或運(yùn)行安裝下載的目標(biāo)文件或?qū)⑾螺d的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄。
5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的方法,所述按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求為超文本傳輸協(xié)議HTTP請(qǐng)求。
6.根據(jù)權(quán)利要求5所述的方法,所述目標(biāo)文件的下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要。
7.根據(jù)權(quán)利要求6所述的方法,所述根據(jù)所述下載信息下載目標(biāo)文件具體包括判斷所述下載信息和本地目標(biāo)文件的屬性信息是否一致,若不一致,則按照下載信息中的文件下載路徑下載目標(biāo)文件。
8.根據(jù)權(quán)利要求7所述的方法,所述使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件之前還包括驗(yàn)證所述下載的目標(biāo)文件的信息摘要與從下載的配置文件中獲取的目標(biāo)文件下載信息中對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。
9.一種更新程序的裝置,包括下載請(qǐng)求發(fā)送模塊,用于按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;配置文件下載模塊,用于從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息;目標(biāo)文件下載模塊,用于從所述配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件;目標(biāo)文件更新模塊,用于使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。
10.根據(jù)權(quán)利要求9所述的裝置,所述下載請(qǐng)求發(fā)送模塊包括按照預(yù)定時(shí)間發(fā)送單元,用于按預(yù)定時(shí)間向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求。
11.根據(jù)權(quán)利要求9所述的裝置,所述配置文件下載請(qǐng)求發(fā)送模塊包括按照通知消息發(fā)送單元,用于在接收到來自上級(jí)節(jié)點(diǎn)的配置文件更新的通知消息后, 向服務(wù)器發(fā)送配置文件的下載請(qǐng)求。
12.根據(jù)權(quán)利要求9所述的裝置,所述目標(biāo)文件更新模塊包括目標(biāo)文件替換單元,用于使用下載的目標(biāo)文件替換對(duì)應(yīng)的本地目標(biāo)文件;目標(biāo)文件運(yùn)行單元,用于運(yùn)行安裝下載的目標(biāo)文件;目標(biāo)文件存儲(chǔ)單元,用于將下載的目標(biāo)文件存儲(chǔ)在本地相應(yīng)目錄。
13.根據(jù)權(quán)利要求9至12中任一項(xiàng)所述的裝置,所述下載請(qǐng)求發(fā)送模塊按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求為超文本傳輸協(xié)議HTTP請(qǐng)求。
14.根據(jù)權(quán)利要求13所述的裝置,所述目標(biāo)文件的下載信息包括文件下載路徑和/或文件名稱和/或文件版本和/或文件信息摘要。
15.根據(jù)權(quán)利要求14所述的裝置,所述目標(biāo)文件下載模塊包括下載信息判斷單元,用于判斷所述下載信息和所述本地目標(biāo)文件的屬性信息是否一致,若一致,中斷當(dāng)前處理;下載單元,用于按照下載信息中的文件下載路徑下載所述目標(biāo)文件。
16.根據(jù)權(quán)利要求15所述的裝置,還包括信息摘要驗(yàn)證模塊,用于驗(yàn)證所述下載的目標(biāo)文件的信息摘要與所述下載信息中對(duì)應(yīng)的信息摘要是否一致,若不一致,則所述下載的目標(biāo)文件不合法,中斷當(dāng)前處理。
全文摘要
本發(fā)明公開了一種更新程序的方法和裝置,其中所述方法包括按預(yù)置規(guī)則向上級(jí)節(jié)點(diǎn)發(fā)送配置文件的下載請(qǐng)求;從所述上級(jí)節(jié)點(diǎn)下載所述配置文件,所述配置文件中預(yù)置有目標(biāo)文件的下載信息;從所述下載的配置文件中獲取目標(biāo)文件的下載信息,根據(jù)所述下載信息下載目標(biāo)文件;使用下載的目標(biāo)文件更新對(duì)應(yīng)的本地目標(biāo)文件。使用本發(fā)明提供的方法,解決了現(xiàn)有技術(shù)中用戶手動(dòng)實(shí)現(xiàn)更新應(yīng)用程序所帶來的無(wú)法保證應(yīng)用程序獲取新版本的及時(shí)性的問題。
文檔編號(hào)H04L29/06GK103034512SQ20121049730
公開日2013年4月10日 申請(qǐng)日期2012年11月28日 優(yōu)先權(quán)日2012年11月28日
發(fā)明者黃鑒廷, 孫小慶, 鄧振波 申請(qǐng)人:北京奇虎科技有限公司, 奇智軟件(北京)有限公司