文件同步方法及文件同步設(shè)備的制作方法
【專利摘要】本發(fā)明公開了一種文件同步方法以及文件同步設(shè)備。該文件同步方法包括:接收終端設(shè)備的注冊;從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的第一文件的第一文件信息并將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo)識、以及所述第一文件信息相關(guān)聯(lián)地存儲,所述第一文件也被存儲在文件服務(wù)器處;從所述文件服務(wù)器獲得在所述第一文件在所述文件服務(wù)器處被更新后所生成的第二文件信息;比較所述第一文件信息與所述第二文件信息以計算文件更新信息;以及依據(jù)所述文件更新信息,向所述終端設(shè)備通知進(jìn)行文件同步。根據(jù)本發(fā)明的文件同步方法簡化了終端設(shè)備在文件同步中所做的工作,將極大地降低終端設(shè)備與文件服務(wù)器進(jìn)行文件同步所產(chǎn)生的能量消耗和流量開銷。
【專利說明】文件同步方法及文件同步設(shè)備
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及設(shè)備端與服務(wù)器端的文件同步,并且更具體地涉及一種在設(shè)備端與服 務(wù)器端之間進(jìn)行文件同步的方法及設(shè)備。
【背景技術(shù)】
[0002] 隨著移動設(shè)備種類的多樣化與移動設(shè)備性能的快速提升,移動設(shè)備已成為現(xiàn)代生 活中必不可少的工具。然而,由于移動設(shè)備本身有限的存儲空間和計算能力,無法將所有的 數(shù)據(jù)和計算都部署在移動設(shè)備端。越來越多的移動設(shè)備依靠其自身的無線互聯(lián)模塊(諸如) 與云端的服務(wù)器進(jìn)行交互以便實(shí)現(xiàn)存儲空間和計算資源的擴(kuò)展,這也被視為是個人消費(fèi)類 電子產(chǎn)品拓展性能、降低系統(tǒng)功耗的有效途徑。
[0003] 當(dāng)服務(wù)器端某一文件發(fā)生更新時,移動設(shè)備與云端服務(wù)器之間經(jīng)常需要進(jìn)行相應(yīng) 的同步操作,以保證該文件在設(shè)備端和服務(wù)器端內(nèi)容一致。然而,現(xiàn)有的云存儲服務(wù)在文件 同步方面傾向于將大量繁雜的工作交由設(shè)備端完成,由此造成了許多無謂的能耗和網(wǎng)絡(luò)流 量開銷。
[0004] 例如,在設(shè)備端和服務(wù)器端均保存有文件"patent_spec. doc ",該文件大小為 2MB,當(dāng)在服務(wù)器端該文件被添加了一行文字的情況下,更新后的文件大小也近似為2MB。在 此情況下,現(xiàn)有的云存儲服務(wù)需要在設(shè)備端對所有本地文件進(jìn)行掃描以對文件進(jìn)行更新。 具體地,在設(shè)備端對每個本地文件進(jìn)行文件比較操作,并且在判斷文件被更新的情況下從 服務(wù)器端接收更新(即,同步),這給設(shè)備端帶來高昂的文件一致性維護(hù)成本。
[0005] 因此,需要一種能夠簡化設(shè)備端的文件同步工作的方法及相應(yīng)設(shè)備。
【發(fā)明內(nèi)容】
[0006] 為了解決上述技術(shù)問題,本發(fā)明提供了一種文件同步方法和文件同步設(shè)備,該文 件同步設(shè)備用作終端設(shè)備和文件服務(wù)器之間的緩存(cache)服務(wù)器,通過在該文件同步設(shè) 備處進(jìn)行文件比較操作來判斷是否需要從文件服務(wù)器處接收文件更新數(shù)據(jù),并且繼而向終 端設(shè)備傳送文件更新數(shù)據(jù)。通過該文件同步方法和文件同步設(shè)備,可以大大簡化在終端設(shè) 備處進(jìn)行的文件同步操作,換句話說,所述終端設(shè)備只需簡單地在必要時接收文件更新數(shù) 據(jù)即可,而無需進(jìn)行繁雜的逐個文件比較操作。
[0007] 根據(jù)本發(fā)明的一個方面,提供了一種文件同步方法,應(yīng)用于文件同步設(shè)備,包括: 接收終端設(shè)備的注冊;從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的第一文件的第一文件 信息并將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo)識、以及所述第一文件信息相 關(guān)聯(lián)地存儲,所述第一文件也被存儲在文件服務(wù)器處;從所述文件服務(wù)器獲得在所述第一 文件在所述文件服務(wù)器處被更新后所生成的第二文件信息;比較所述第一文件信息與所述 第二文件信息以計算文件更新信息;以及依據(jù)所述文件更新信息,向所述終端設(shè)備通知進(jìn) 行文件同步。
[0008] 優(yōu)選地,在所述文件同步方法還可以包括:從所述文件服務(wù)器獲得文件同步通知 消息,其中,在從所述文件服務(wù)器獲得所述文件同步通知消息之后,從所述文件服務(wù)器獲得 所述第二文件信息,在所述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者 在從所述服務(wù)器獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo)識。
[0009] 在此情況下,在從所述文件服務(wù)器接收了被更新的第一文件的文件標(biāo)識以及所述 第二文件信息之后,所述文件同步方法還可以包括檢索與所述文件標(biāo)識相關(guān)聯(lián)地存儲的所 述第一文件信息。
[0010] 替代地,在所述文件同步方法中,按照預(yù)定間隔周期性地,對于所述第一文件的文 件標(biāo)識及其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器獲得所述第一文件在所述文件服務(wù) 器處的相應(yīng)文件信息,其中,在所述第一文件在所述文件服務(wù)器處未被更新的情況下,所述 相應(yīng)文件信息與所述第一文件信息相同;在所述第一文件在所述文件服務(wù)器處被更新的情 況下,所述相應(yīng)文件信息與所述第一文件信息不同并且為所述第二文件信息。
[0011] 優(yōu)選地,在所述文件同步方法中,依據(jù)所述文件更新信息向所述終端設(shè)備通知進(jìn) 行文件同步包括:向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識。
[0012] 優(yōu)選地,所述文件同步方法還包括:依據(jù)所述文件更新信息從所述文件服務(wù)器接 收所述第一文件的需更新的數(shù)據(jù)部分;以及將所接收的數(shù)據(jù)部分傳送至所述終端設(shè)備。
[0013] 替代地,在所述文件同步方法中,依據(jù)所述文件更新信息向所述終端設(shè)備通知進(jìn) 行文件同步包括:向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識和所述文件 更新信息,以便使得所述終端設(shè)備能夠利用所述文件更新信息從所述文件服務(wù)器接收所述 第一文件的需更新的數(shù)據(jù)部分。
[0014] 優(yōu)選地,在所述文件同步方法中,所述第一文件信息包括在所述終端設(shè)備中存儲 的第一文件的哈希值;以及所述第二文件信息包括在所述服務(wù)器處更新后的第一文件的哈 希值。
[0015] 根據(jù)本發(fā)明另一方面,提供了一種文件同步設(shè)備,包括:注冊管理部分,用于接收 終端設(shè)備的注冊;第一文件信息接收部分,用于從所述終端設(shè)備獲得在所述終端設(shè)備中存 儲的第一文件的第一文件信息,所述第一文件也被存儲在文件服務(wù)器處;文件信息關(guān)聯(lián)部 分,用于將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo)識、以及所述第一文件信息相 關(guān)聯(lián)地存儲;第二文件信息接收部分,用于從所述文件服務(wù)器獲得在所述第一文件在所述 服務(wù)器處被更新后所生成的第二文件信息;更新信息計算部分,用于比較所述第一文件信 息與所述第二文件信息以計算文件更新信息;以及文件同步通知部分,用于依據(jù)所述文件 更新信息向所述終端設(shè)備通知進(jìn)行文件同步。
[0016] 優(yōu)選地,所述文件同步設(shè)備還可以包括:同步通知接收部分,用于從所述文件服務(wù) 器獲得文件同步通知消息,其中,在所述同步通知接收部分從所述文件服務(wù)器獲得所述文 件同步通知消息之后,所述第二文件信息接收部分從所述文件服務(wù)器獲得所述第二文件信 息,其中,在所述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者所述第二文 件信息接收部分在獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo)識。
[0017] 在此情況下,所述文件同步設(shè)備還可以包括:文件檢索部分,用于在所述第二文 件信息接收部分從所述服務(wù)器接收了被更新的第一文件的文件標(biāo)識以及所述第二文件信 息之后,在所述文件信息關(guān)聯(lián)部分中檢索與所述文件標(biāo)識相關(guān)聯(lián)地存儲的所述第一文件信 肩、。
[0018] 替代地,在所述文件同步設(shè)備中,所述第二文件信息接收部分可以按照預(yù)定間隔 周期性地,對于所述第一文件的文件標(biāo)識及其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器 獲得所述第一文件在所述文件服務(wù)器處的相應(yīng)文件信息,其中,在所述第一文件在所述文 件服務(wù)器處未被更新的情況下,所述相應(yīng)文件信息與所述第一文件信息相同;在所述第一 文件在所述文件服務(wù)器處被更新的情況下,所述相應(yīng)文件信息與所述第一文件信息不同并 且為所述第二文件信息。
[0019] 優(yōu)選地,在所述文件同步設(shè)備中,所述文件同步通知部分向所述終端設(shè)備傳送待 同步的被更新的第一文件的文件標(biāo)識。
[0020] 優(yōu)選地,所述文件同步設(shè)備還可以包括:數(shù)據(jù)接收部分,用于依據(jù)所述文件更新信 息從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分;以及數(shù)據(jù)傳送部分,用于將 所接收的數(shù)據(jù)部分傳送至所述終端設(shè)備。
[0021] 替代地,在所述文件同步設(shè)備中,所述文件同步通知部分向所述終端設(shè)備傳送待 同步的被更新的第一文件的文件標(biāo)識和所述文件更新信息,以便使得所述終端設(shè)備能夠利 用所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分。
[0022] 優(yōu)選地,所述第一文件信息為在所述終端設(shè)備中存儲的第一文件的哈希值;以及 所述第二文件信息為在所述服務(wù)器處更新后的第一文件的哈希值。
[0023] 采用根據(jù)本發(fā)明的文件同步方法和文件同步設(shè)備能夠簡化終端設(shè)備在文件同步 中所做的工作,將極大地降低終端設(shè)備與文件服務(wù)器進(jìn)行文件同步所產(chǎn)生的能量消耗和流 量開銷。
[0024] 本發(fā)明的其它特征和優(yōu)點(diǎn)將在隨后的說明書中闡述,并且,部分地從說明書中變 得顯而易見,或者通過實(shí)施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點(diǎn)可通過在說明書、權(quán)利 要求書以及附圖中所特別指出的結(jié)構(gòu)來實(shí)現(xiàn)和獲得。
【專利附圖】
【附圖說明】
[0025] 附圖用來提供對本發(fā)明的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本發(fā)明的實(shí) 施例一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的限制。在附圖中:
[0026] 圖1圖示了現(xiàn)有技術(shù)中終端設(shè)備與文件服務(wù)器之間進(jìn)行文件同步的示意圖;
[0027] 圖2圖示了根據(jù)本發(fā)明實(shí)施例的采用cache服務(wù)器輔助在終端設(shè)備與文件服務(wù)器 之間進(jìn)行文件同步的示意圖;
[0028] 圖3圖示了根據(jù)本發(fā)明實(shí)施例的采用cache服務(wù)器輔助進(jìn)行文件同步的交互圖;
[0029] 圖4圖示了根據(jù)本發(fā)明實(shí)施例的文件同步方法的流程圖;以及
[0030] 圖5圖示了根據(jù)本發(fā)明實(shí)施例的文件同步設(shè)備的示意性框圖。
【具體實(shí)施方式】
[0031] 將參照附圖詳細(xì)描述根據(jù)本發(fā)明的各個實(shí)施例。這里,需要注意的是,在附圖中, 將相同的附圖標(biāo)記賦予基本上具有相同或類似結(jié)構(gòu)和功能的組成部分,并且將省略關(guān)于它 們的重復(fù)描述。
[0032] 如圖1所示,示出了現(xiàn)有技術(shù)中終端設(shè)備與文件服務(wù)器之間進(jìn)行文件同步的示意 圖?,F(xiàn)有的終端設(shè)備與云端的文件服務(wù)器直接進(jìn)行文件同步,需要終端設(shè)備對其中存儲的 所有文件進(jìn)行逐個掃描,并相應(yīng)地進(jìn)行文件比較和更新等繁雜的操作。這將占用終端設(shè)備 處的大量計算資源,并且也相應(yīng)地造成了大量的能量消耗。另一方面,由于終端設(shè)備與文件 服務(wù)器之間的交互過程較為繁雜,這種在終端設(shè)備與文件服務(wù)器之間直接進(jìn)行文件同步的 方式也造成了終端設(shè)備處的大量網(wǎng)絡(luò)流量開銷。
[0033] 考慮到現(xiàn)有技術(shù)的上述問題,發(fā)明人提出了在終端設(shè)備與文件服務(wù)器之間設(shè)置 cache服務(wù)器的技術(shù)方案,通過將在終端設(shè)備處執(zhí)行的同步操作轉(zhuǎn)嫁于cache服務(wù)器上來 將終端設(shè)備從繁雜的同步操作中釋放出來,從而降低終端設(shè)備處的計算資源占用,使得終 端設(shè)備可以集中計算資源進(jìn)行其它操作;也同時降低終端設(shè)備處的能量消耗,相應(yīng)地延長 了終端設(shè)備的電池使用時間;另一方面,也節(jié)省了終端設(shè)備處的網(wǎng)絡(luò)流量開銷。下面,將結(jié) 合圖2到圖5來具體描述根據(jù)本發(fā)明實(shí)施例的文件同步方法和文件同步設(shè)備。
[0034] 如圖2所示,示出了根據(jù)本發(fā)明實(shí)施例的采用cache服務(wù)器輔助在終端設(shè)備與文 件服務(wù)器之間進(jìn)行文件同步的示意圖。該cache服務(wù)器專門用于進(jìn)行與文件服務(wù)器之間的 文件同步操作(即,數(shù)據(jù)同步操作)。具體地,該cache服務(wù)器負(fù)責(zé)進(jìn)行文件更新過程中的文 件比對、修改信息維護(hù)、文件差異性檢查等等計算,而只將最終修改結(jié)果告知終端設(shè)備。
[0035] 終端設(shè)備需要向cache服務(wù)器注冊,并且在cache服務(wù)器中備份所述終端設(shè)備中 的文件信息。
[0036] cache服務(wù)器可以同時管理多個終端設(shè)備,無論已經(jīng)向cache服務(wù)器進(jìn)行注冊的 終端設(shè)備當(dāng)前是否登錄到該cache服務(wù)器,該cache服務(wù)器都可以自動地對其中存儲的每 個文件進(jìn)行文件比較操作,并相應(yīng)地計算文件更新信息。
[0037] 在已經(jīng)向cache服務(wù)器進(jìn)行注冊的終端設(shè)備當(dāng)前登錄到該cache服務(wù)器的情況 下,該cache服務(wù)器可以依據(jù)所計算的文件更新信息向所述終端設(shè)備通知進(jìn)行文件同步。 而且,在從所述終端設(shè)備接收到文件同步確認(rèn)之后,可以從所述文件服務(wù)器接收需更新的 文件數(shù)據(jù)部分,并繼而將其轉(zhuǎn)發(fā)給所述終端設(shè)備。
[0038] 在已經(jīng)向cache服務(wù)器進(jìn)行注冊的終端設(shè)備當(dāng)前沒有登錄到該cache服務(wù)器的情 況下,該cache服務(wù)器可以存儲所計算的文件更新信息。待所述終端設(shè)備登錄到該cache 服務(wù)器時,再依據(jù)所計算的文件更新信息向所述終端設(shè)備通知進(jìn)行文件同步。
[0039] 如圖3所示,示出了根據(jù)本發(fā)明實(shí)施例的采用cache服務(wù)器輔助進(jìn)行文件同步的 交互圖。
[0040] 首先,終端設(shè)備A向cache服務(wù)器注冊,并且在cache服務(wù)器中備份所述終端設(shè)備 A中的第一文件的當(dāng)前版本f (S卩,原始版本f)的文件信息。
[0041] 在終端設(shè)備B中將本地的第一文件從當(dāng)前版本f (S卩,原始版本f)修改為修改版 本f',并且將該修改上傳到(即,同步到)文件服務(wù)器。因此,相應(yīng)地,文件服務(wù)器中存儲的 第一文件被從版本f更新為修改版本f'。
[0042] 然后,cache服務(wù)器在獲得了所述第一文件的修改版本f'的文件信息之后,依據(jù) 所述第一文件的修改版本f'的文件信息以及該cache服務(wù)器中已經(jīng)備份的所述第一文件 的原始版本f的文件信息,計算文件更新信息。所述文件信息可以是所述第一文件的哈希 值。
[0043] 接下來,cache服務(wù)器從文件服務(wù)器接收要更新的文件數(shù)據(jù)部分,并將其轉(zhuǎn)發(fā)給終 設(shè)備A。
[0044] 在所述終端設(shè)備A未登錄的情況下,cache服務(wù)器每次在從文件服務(wù)器獲得了所 述第一文件的修改版本的文件信息之后,可以利用在該cache服務(wù)器中保存的原始文件信 息來計算文件更新信息。
[0045] 替代地,在所述終端設(shè)備A未登錄的情況下,cache服務(wù)器每次在從文件服務(wù)器獲 得了所述第一文件的修改版本的文件信息之后,可以利用在該cache服務(wù)器中保存的原始 文件信息、以及在本次更新之前計算的尚未通知給所述終端設(shè)備A的(多個)文件更新信息, 來計算本次文件更新信息。然后,在所述終端設(shè)備A登錄之后,所述cache服務(wù)器可以依據(jù) 其中保存的所有文件更新信息來從所述文件服務(wù)器接收要更新的文件數(shù)據(jù)部分。
[0046] 另一方面,所述cache服務(wù)器可以將關(guān)于所述第一文件的所有文件更新信息發(fā)送 給所述終端設(shè)備A,以便使得所述終端設(shè)備能夠利用所述文件更新信息從所述文件服務(wù)器 接收所述第一文件的需更新的數(shù)據(jù)部分。
[0047] 如圖4所示,示出了根據(jù)本發(fā)明實(shí)施例的文件同步方法400的流程圖。根據(jù)本發(fā) 明實(shí)施例的文件同步方法400應(yīng)用于文件同步設(shè)備,所述文件同步設(shè)備可以是上面所述的 cache服務(wù)器。
[0048] 根據(jù)本發(fā)明實(shí)施例的文件同步方法400在步驟S401開始。
[0049] 在步驟S410,接收終端設(shè)備的注冊。如前所述,所述文件同步設(shè)備可以接收多個終 端設(shè)備的注冊,并且相應(yīng)地管理多個終端設(shè)備。下面,為了清楚地描述本發(fā)明構(gòu)思,將在單 個終端設(shè)備的情況下展開描述,然而應(yīng)了解根據(jù)本發(fā)明實(shí)施例的文件同步方法400同樣應(yīng) 用于多個終端設(shè)備的情況。
[0050] 然后,在步驟S420,從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的第一文件的第 一文件信息。所述第一文件也被存儲在文件服務(wù)器處。例如,所述第一文件被所述終端設(shè) 備上傳到所述文件服務(wù)器,或者被另一終端設(shè)備上傳到所述文件服務(wù)器,所述另一終端設(shè) 備可以向所述文件同步設(shè)備注冊也可以不向所述文件同步設(shè)備注冊。例如,所述終端設(shè)備 可以是智能手機(jī),所述另一終端設(shè)備可以是另一智能手機(jī)或者臺式計算機(jī)。所述第一文件 信息可以包括在所述終端設(shè)備中存儲的第一文件的哈希值。
[0051] 在步驟S430,在所述文件同步設(shè)備中將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件 的文件標(biāo)識、以及所述第一文件信息相關(guān)聯(lián)地存儲。
[0052] 在所述步驟S430之后,所述終端設(shè)備有可能從所述文件同步設(shè)備登出。
[0053] 接下來,在步驟S440,從所述文件服務(wù)器獲得在所述第一文件在所述文件服務(wù)器 處被更新后所生成的第二文件信息。所述第二文件信息包括在所述服務(wù)器處更新后的第一 文件的哈希值。
[0054] 在步驟S450,比較所述第一文件信息與所述第二文件信息以計算文件更新信息。
[0055] 然后,在步驟S460,檢測所述終端設(shè)備是否處于登錄狀態(tài)。例如,通過檢測是否從 所述終端設(shè)備接收到心跳信息、或者是否從所述終端設(shè)備接收到登出信息等等,來檢測所 述終端設(shè)備是否仍處于登錄狀態(tài)。本領(lǐng)域技術(shù)人員還可以利用本領(lǐng)域常用的其它技術(shù)手段 來檢測所述終端設(shè)備是否處于登錄狀態(tài),本發(fā)明不受具體檢測手段的限制。
[0056] 在步驟S460檢測到所述終端設(shè)備處于登錄狀態(tài)的情況下,在步驟S470,依據(jù)所述 文件更新信息,向所述終端設(shè)備通知進(jìn)行文件同步。
[0057] 然而,在步驟S460檢測到所述終端設(shè)備未處于登錄狀態(tài)的情況下,可以轉(zhuǎn)到步驟 S440,以便下一次計算文件更新信息。
[0058] 最后,根據(jù)本發(fā)明實(shí)施例的文件同步方法在步驟S499結(jié)束。
[0059] 下面,將具體描述根據(jù)本發(fā)明實(shí)施例的文件同步方法400中的步驟S440的具體實(shí) 現(xiàn)。
[0060] 第一示例
[0061] 在所述文件服務(wù)器中的所述第一文件被更新之后,參考圖3所示,在所述文件服 務(wù)器中的所述第一文件被終端設(shè)備B更新之后,所述文件服務(wù)器向所述文件同步服務(wù)器發(fā) 出文件同步通知消息。所述終端設(shè)備B可以與上述的另一終端設(shè)備相同或不同,并且也可 以向所述文件同步服務(wù)器注冊或不注冊、登錄或不登錄。
[0062] 相應(yīng)地,在根據(jù)本發(fā)明實(shí)施例的文件同步方法中,在步驟S4410,從所述文件服務(wù) 器獲得文件同步通知消息,然后在步驟S4420,從所述文件服務(wù)器獲得所述第二文件信息。
[0063] 所述步驟S4410和所述步驟S4420可以同時執(zhí)行;或者可以先后執(zhí)行,即可以在從 所述文件服務(wù)器獲得所述文件同步通知消息之后,再從所述文件服務(wù)器獲得所述第二文件 信息。
[0064] 可以在所述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者可以在 從所述服務(wù)器獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo)識。
[0065] 然后,在步驟S4420之后,還可以執(zhí)行步驟S4430,其中依據(jù)從所述文件服務(wù)器接 收的被更新的第一文件的文件標(biāo)識,檢索在所述文件同步設(shè)備中與所述文件標(biāo)識相關(guān)聯(lián)地 存儲的所述第一文件信息。
[0066] 為了簡化,在附圖中沒有示出步驟S4410 - S4430。
[0067] 第二示例
[0068] 根據(jù)本發(fā)明實(shí)施例的文件同步方法,所述文件同步設(shè)備也可以按照預(yù)定間隔周期 性地,對于所述第一文件的文件標(biāo)識及其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器獲得 所述第一文件在所述文件服務(wù)器處的相應(yīng)文件信息。換句話說,所述文件同步設(shè)備也可以 按照預(yù)定間隔周期性地主動執(zhí)行同步操作。
[0069] 在所述第一文件在所述文件服務(wù)器處未被更新的情況下,所述相應(yīng)文件信息與所 述第一文件信息相同。
[0070] 在所述第一文件在所述文件服務(wù)器處被更新的情況下,所述相應(yīng)文件信息與所述 第一文件信息不同并且為所述第二文件信息。
[0071] 下面,將具體描述根據(jù)本發(fā)明實(shí)施例的文件同步方法400中的步驟S470的具體實(shí) 現(xiàn)。
[0072] 第一示例
[0073] 根據(jù)本發(fā)明實(shí)施例的文件同步方法400中的步驟S470可以包括多個子步驟。
[0074] 在步驟S4710,向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識。
[0075] 可選地,在步驟S4720,從所述終端設(shè)備接收文件同步確認(rèn)消息。
[0076] 在步驟S4730,依據(jù)所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需 更新的數(shù)據(jù)部分。
[0077] 然后,在步驟S4740,將所接收的數(shù)據(jù)部分轉(zhuǎn)發(fā)至所述終端設(shè)備,從而完成所述終 端設(shè)備處的數(shù)據(jù)文件同步/更新。
[0078] 為了簡化,在附圖中沒有示出步驟S4710 - S4740。
[0079] 第二示例
[0080] 在根據(jù)本發(fā)明實(shí)施例的文件同步方法400中的步驟S470中,向所述終端設(shè)備傳送 待同步的被更新的第一文件的文件標(biāo)識和所述文件更新信息。由此,使得所述終端設(shè)備能 夠利用所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分。在此 情況下,所述文件同步設(shè)備無需從所述文件服務(wù)器接收并轉(zhuǎn)發(fā)需更新的文件數(shù)據(jù)部分。
[0081] 如圖5所示,示出了根據(jù)本發(fā)明實(shí)施例的文件同步設(shè)備500的示意性框圖。
[0082] 根據(jù)本發(fā)明實(shí)施例的文件同步設(shè)備500包括:注冊管理部分510、第一文件信息接 收部分520、第二文件信息接收部分530、文件信息關(guān)聯(lián)部分540、更新信息計算部分550、以 及文件同步通知部分560。
[0083] 所述注冊管理部分510用于接收終端設(shè)備的注冊。如前所述,所述注冊管理部分 510可以接收多個終端設(shè)備的注冊,并且相應(yīng)地管理多個終端設(shè)備。下面,為了清楚地描述 本發(fā)明構(gòu)思,將在單個終端設(shè)備的情況下展開描述,然而應(yīng)了解根據(jù)本發(fā)明實(shí)施例的文件 同步設(shè)備500同樣應(yīng)用于多個終端設(shè)備的情況。
[0084] 第一文件信息接收部分520用于從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的 第一文件的第一文件信息,所述第一文件也被存儲在文件服務(wù)器處。例如,所述第一文件被 所述終端設(shè)備上傳到所述文件服務(wù)器,或者被另一終端設(shè)備上傳到所述文件服務(wù)器,所述 另一終端設(shè)備可以向所述文件同步設(shè)備的注冊管理部分510注冊也可以不向所述注冊管 理部分510注冊。例如,所述終端設(shè)備可以是智能手機(jī),所述另一終端設(shè)備可以是另一智能 手機(jī)或者臺式計算機(jī)。所述第一文件信息可以包括在所述終端設(shè)備中存儲的第一文件的哈 希值。
[0085] 文件信息關(guān)聯(lián)部分540用于將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo) 識、以及所述第一文件信息相關(guān)聯(lián)地存儲。
[0086] 第二文件信息接收部分550用于從所述文件服務(wù)器獲得在所述第一文件在所述 服務(wù)器處被更新后所生成的第二文件信息。所述第二文件信息包括在所述服務(wù)器處更新后 的第一文件的哈希值。
[0087] 更新信息計算部分550用于比較所述第一文件信息與所述第二文件信息以計算 文件更新信息。
[0088] 文件同步通知部分560用于依據(jù)所述文件更新信息向所述終端設(shè)備通知進(jìn)行文 件同步。
[0089] 第一示例
[0090] 所述文件同步設(shè)備500還可以包括同步通知接收部分570,用于從所述文件服務(wù) 器獲得文件同步通知消息。
[0091] 具體地,在所述文件服務(wù)器中的所述第一文件被更新之后,參考圖3所示,在所述 文件服務(wù)器中的所述第一文件被終端設(shè)備B更新之后,所述文件服務(wù)器向所述文件同步服 務(wù)器的同步通知接收部分570發(fā)出文件同步通知消息。所述終端設(shè)備B可以與上述的另一 終端設(shè)備相同或不同,并且也可以向所述文件同步服務(wù)器注冊或不注冊、登錄或不登錄。
[0092] 在所述同步通知接收部分570從所述文件服務(wù)器獲得所述文件同步通知消息之 后,所述第二文件信息接收部分530從所述文件服務(wù)器獲得所述第二文件信息??梢栽谒?述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者所述第二文件信息接收部 分530在獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo)識。
[0093] 替代地,所述同步通知接收部分570可以與所述第二文件信息接收部分530 -起 實(shí)現(xiàn)為所述第二文件信息接收部分530,即所述第二文件信息接收部分530從所述文件服 務(wù)器獲得所述文件同步通知消息和所述第二文件信息,在所述文件同步通知消息中包括被 更新的第一文件的文件標(biāo)識;或者所述第二文件信息接收部分530從所述文件服務(wù)器獲得 所述文件同步通知消息、被更新的第一文件的文件標(biāo)識、以及所述第二文件信息。
[0094] 在此情況下,所述文件同步設(shè)備500還可以包括文件檢索部分545,用于在所述第 二文件信息接收部分530從所述文件服務(wù)器接收了被更新的第一文件的文件標(biāo)識以及所 述第二文件信息之后,在所述文件信息關(guān)聯(lián)部分中檢索與所述文件標(biāo)識相關(guān)聯(lián)地存儲的所 述第一文件信息。
[0095] 為了簡化,在圖5中沒有示出所述同步通知接收部分570和所述文件檢索部分 545。
[0096] 第二示例
[0097] 所述第二文件信息接收部分530按照預(yù)定間隔周期性地,對于所述第一文件的文 件標(biāo)識及其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器獲得所述第一文件在所述文件服務(wù) 器處的相應(yīng)文件信息。換句話說,所述文件同步設(shè)備的第二文件信息接收部分530也可以 按照預(yù)定間隔周期性地主動執(zhí)行同步操作。
[0098] 在所述第一文件在所述文件服務(wù)器處未被更新的情況下,所述相應(yīng)文件信息與所 述第一文件信息相同。
[0099] 在所述第一文件在所述文件服務(wù)器處被更新的情況下,所述相應(yīng)文件信息與所述 第一文件信息不同并且為所述第二文件信息。
[0100] 在更新信息計算部分550計算了文件更新信息之后,所述文件同步通知部分560 依據(jù)所述文件更新信息向所述終端設(shè)備通知進(jìn)行文件同步。
[0101] 所述文件同步通知部分560可以向所述終端設(shè)備傳送待同步的被更新的第一文 件的文件標(biāo)識和所述文件更新信息。由此,使得所述終端設(shè)備能夠利用所述文件更新信息 從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分。
[0102] 替代地,所述文件同步通知部分560可以向所述終端設(shè)備傳送待同步的被更新的 第一文件的文件標(biāo)識。
[0103] 在此情況下,所述文件同步設(shè)備500還可以包括數(shù)據(jù)接收部分580和數(shù)據(jù)傳送部 分 590。
[0104] 所述數(shù)據(jù)接收部分580用于依據(jù)所述文件更新信息從所述文件服務(wù)器接收所述 第一文件的需更新的數(shù)據(jù)部分。所述數(shù)據(jù)傳送部分590用于將所接收的數(shù)據(jù)部分傳送至所 述終端設(shè)備。
[0105] 為了簡化,在圖5中沒有示出所述數(shù)據(jù)接收部分580和所述數(shù)據(jù)傳送部分590。
[0106] 根據(jù)本發(fā)明實(shí)施例,通過cache服務(wù)器作為文件同步設(shè)備,代替終端設(shè)備執(zhí)行了 文件比對、修改信息維護(hù)、以及文件差異性檢查等等計算工作,大大降低了終端設(shè)備處的計 算資源占用,使得終端設(shè)備可以集中計算資源進(jìn)行其它操作;也同時降低終端設(shè)備處的能 量消耗,相應(yīng)地延長了終端設(shè)備的電池使用時間;另一方面,也節(jié)省了終端設(shè)備處的網(wǎng)絡(luò)流 量開銷。
[0107] 通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明可借助 于軟件加必需的硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以全部通過軟件、或硬件來實(shí)施。基于這 樣的理解,本發(fā)明的技術(shù)方案對【背景技術(shù)】做出貢獻(xiàn)的全部或者部分可以以軟件產(chǎn)品的形式 體現(xiàn)出來,該計算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁盤、光盤等,包括若干 指令用以使得一臺計算機(jī)設(shè)備(可以是個人計算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明 各個實(shí)施例或者實(shí)施例的某些部分所述的方法。
[0108] 在上面詳細(xì)描述了本發(fā)明的各個實(shí)施例。然而,本領(lǐng)域技術(shù)人員應(yīng)該理解,在不脫 離本發(fā)明的原理和精神的情況下,可對這些實(shí)施例進(jìn)行各種修改,組合或子組合,并且這樣 的修改應(yīng)落入本發(fā)明的范圍內(nèi)。
【權(quán)利要求】
1. 一種文件同步方法,應(yīng)用于文件同步設(shè)備,該文件同步方法包括: 接收終端設(shè)備的注冊; 從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的第一文件的第一文件信息并將所述終 端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo)識、以及所述第一文件信息相關(guān)聯(lián)地存儲,所述 第一文件也被存儲在文件服務(wù)器處; 從所述文件服務(wù)器獲得在所述第一文件在所述文件服務(wù)器處被更新后所生成的第二 文件信息; 比較所述第一文件信息與所述第二文件信息以計算文件更新信息;以及 依據(jù)所述文件更新信息,向所述終端設(shè)備通知進(jìn)行文件同步。
2. 如權(quán)利要求1所述的文件同步方法,還包括: 從所述文件服務(wù)器獲得文件同步通知消息, 其中,在從所述文件服務(wù)器獲得所述文件同步通知消息之后,從所述文件服務(wù)器獲得 所述第二文件信息, 在所述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者在從所述服務(wù)器 獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo)識。
3. 如權(quán)利要求2所述的文件同步方法,還包括: 在從所述文件服務(wù)器接收了被更新的第一文件的文件標(biāo)識以及所述第二文件信息之 后,檢索與所述文件標(biāo)識相關(guān)聯(lián)地存儲的所述第一文件信息。
4. 如權(quán)利要求1所述的文件同步方法,其中,按照預(yù)定間隔周期性地,對于所述第一文 件的文件標(biāo)識及其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器獲得所述第一文件在所述文 件服務(wù)器處的相應(yīng)文件信息, 其中,在所述第一文件在所述文件服務(wù)器處未被更新的情況下,所述相應(yīng)文件信息與 所述第一文件信息相同; 在所述第一文件在所述文件服務(wù)器處被更新的情況下,所述相應(yīng)文件信息與所述第一 文件信息不同并且為所述第二文件信息。
5. 如權(quán)利要求1所述的文件同步方法,其中,依據(jù)所述文件更新信息向所述終端設(shè)備 通知進(jìn)行文件同步包括:向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識。
6. 如權(quán)利要求5所述的文件同步方法,還包括: 依據(jù)所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分;以 及 將所接收的數(shù)據(jù)部分傳送至所述終端設(shè)備。
7. 如權(quán)利要求1所述的文件同步方法,其中,依據(jù)所述文件更新信息向所述終端設(shè)備 通知進(jìn)行文件同步包括:向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識和所 述文件更新信息,以便使得所述終端設(shè)備能夠利用所述文件更新信息從所述文件服務(wù)器接 收所述第一文件的需更新的數(shù)據(jù)部分。
8. 如權(quán)利要求1所述的文件同步方法,其中, 所述第一文件信息包括在所述終端設(shè)備中存儲的第一文件的哈希值;以及 所述第二文件信息包括在所述服務(wù)器處更新后的第一文件的哈希值。
9. 一種文件同步設(shè)備,包括: 注冊管理部分,用于接收終端設(shè)備的注冊; 第一文件信息接收部分,用于從所述終端設(shè)備獲得在所述終端設(shè)備中存儲的第一文件 的第一文件信息,所述第一文件也被存儲在文件服務(wù)器處; 文件信息關(guān)聯(lián)部分,用于將所述終端設(shè)備的設(shè)備標(biāo)識、所述第一文件的文件標(biāo)識、以及 所述第一文件信息相關(guān)聯(lián)地存儲; 第二文件信息接收部分,用于從所述文件服務(wù)器獲得在所述第一文件在所述服務(wù)器處 被更新后所生成的第二文件信息; 更新信息計算部分,用于比較所述第一文件信息與所述第二文件信息以計算文件更新 ?目息;以及 文件同步通知部分,用于依據(jù)所述文件更新信息向所述終端設(shè)備通知進(jìn)行文件同步。
10. 如權(quán)利要求9所述的文件同步設(shè)備,還包括: 同步通知接收部分,用于從所述文件服務(wù)器獲得文件同步通知消息, 其中,在所述同步通知接收部分從所述文件服務(wù)器獲得所述文件同步通知消息之后, 所述第二文件信息接收部分從所述文件服務(wù)器獲得所述第二文件信息, 其中,在所述文件同步通知消息中包括被更新的第一文件的文件標(biāo)識,或者所述第二 文件信息接收部分在獲得所述第二文件信息時相關(guān)聯(lián)地獲得被更新的第一文件的文件標(biāo) 識。
11. 如權(quán)利要求10所述的文件同步設(shè)備,還包括: 文件檢索部分,用于在所述第二文件信息接收部分從所述文件服務(wù)器接收了被更新的 第一文件的文件標(biāo)識以及所述第二文件信息之后,在所述文件信息關(guān)聯(lián)部分中檢索與所述 文件標(biāo)識相關(guān)聯(lián)地存儲的所述第一文件信息。
12. 如權(quán)利要求9所述的文件同步設(shè)備,其中, 所述第二文件信息接收部分按照預(yù)定間隔周期性地,對于所述第一文件的文件標(biāo)識及 其相關(guān)聯(lián)的第一文件信息,從所述文件服務(wù)器獲得所述第一文件在所述文件服務(wù)器處的相 應(yīng)文件信息, 其中,在所述第一文件在所述文件服務(wù)器處未被更新的情況下,所述相應(yīng)文件信息與 所述第一文件信息相同; 在所述第一文件在所述文件服務(wù)器處被更新的情況下,所述相應(yīng)文件信息與所述第一 文件信息不同并且為所述第二文件信息。
13. 如權(quán)利要求9所述的文件同步設(shè)備,其中, 所述文件同步通知部分向所述終端設(shè)備傳送待同步的被更新的第一文件的文件標(biāo)識。
14. 如權(quán)利要求9所述的文件同步設(shè)備,還包括: 數(shù)據(jù)接收部分,用于依據(jù)所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需 更新的數(shù)據(jù)部分;以及 數(shù)據(jù)傳送部分,用于將所接收的數(shù)據(jù)部分傳送至所述終端設(shè)備。
15. 如權(quán)利要求9所述的文件同步方法,其中,所述文件同步通知部分向所述終端設(shè)備 傳送待同步的被更新的第一文件的文件標(biāo)識和所述文件更新信息,以便使得所述終端設(shè)備 能夠利用所述文件更新信息從所述文件服務(wù)器接收所述第一文件的需更新的數(shù)據(jù)部分。
16. 如權(quán)利要求9所述的文件同步設(shè)備,其中, 所述第一文件信息為在所述終端設(shè)備中存儲的第一文件的哈希值;以及 所述第二文件信息為在所述服務(wù)器處更新后的第一文件的哈希值。
【文檔編號】H04L29/08GK104065676SQ201310088476
【公開日】2014年9月24日 申請日期:2013年3月19日 優(yōu)先權(quán)日:2013年3月19日
【發(fā)明者】鄧寧, 林松濤 申請人:聯(lián)想(北京)有限公司