文件同步方法及其終端的制作方法
【專利摘要】本發(fā)明公開了一種文件同步方法及其終端,包括:終端存儲同步文件夾上一次進行文件同步的快照;所述終端向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號;通過云服務器的認證后,所述終端從云服務器獲取云端文件列表;從終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失。本發(fā)明提供的文件同步方法及其終端能夠解決減少云服務器的處理量,提升了文件同步的速度,通過云服務器同步信息的效率更高、改善了用戶體驗。
【專利說明】文件同步方法及其終端
【技術領域】
[0001]本發(fā)明涉及通信【技術領域】,特別是涉及文件同步方法及其終端。
【背景技術】
[0002]伴隨著移動互聯(lián)網的快速發(fā)展,以及移動互聯(lián)網用戶的持續(xù)增加,一般一份文件要在一種終端上進行查看、修改、保存,在另一種終端上獲取文件、查看,用戶需要通過數(shù)據線鏈接多個終端,或者通過藍牙、紅外等方式傳輸共享文件。而云存儲則是近幾年來與云計算同時興起的概念,通常對“云存儲”的解釋是:存儲可以作為一種服務,通過網絡提供給用戶。這樣,只要各個終端能聯(lián)網,就可以保持各終端間的文件同步。因此,利用云存儲技術是用戶的文件在多個終端保持最新的內容,文件同步是不錯的選擇。但是目前終端與云服務器進行同步時,云服務器的處理量較大,文件同步速度較慢,尤其是當同步文件較多時,這個問題尤為明顯。
【發(fā)明內容】
[0003]有鑒于此,本發(fā)明的目的在于提出一種文件同步方法及其終端,以解決云服務器處理量過大、文件同步速度較慢的問題,。
[0004]基于上述目的,本發(fā)明提供的文件同步方法包括:
[0005]S1、終端存儲同步文件夾上一次進行文件同步的快照;
[0006]S2、所述終端向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號;
[0007]S3、通過云服務器的認證后,所述終端從云服務器獲取云端文件列表;
[0008]S4、所述終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失;若列表項三方有缺失,則進入步驟5 ;若列表項三方無缺失,則進入步驟6 ;
[0009]S5、執(zhí)行本地或者云端文件的刪除、下載或者上傳操作;
[0010]S6、執(zhí)行本地或者云端文件的更新操作。
[0011]可選地,所述快照是指當云服務器和終端進行同步后,終端獲取各同步文件的云端屬性和本地屬性,并將其轉換成一個包含云端屬性和本地屬性的集合對象。
[0012]較佳地,所述終端和云服務器每進行一次文件同步后,該終端存儲同步文件夾中各同步文件的快照。
[0013]可選地,所述執(zhí)行本地或者云端文件的刪除、下載或者上傳操作的步驟具體包括:
[0014]如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云%5文件刪除;
[0015]如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地;[0016]如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除;
[0017]如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端。
[0018]可選地,所述執(zhí)行本地或者云端文件的更新操作的步驟具體包括:
[0019]通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步;
[0020]通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
[0021]本發(fā)明還提供了一種實現(xiàn)文件同步的終端,包括:
[0022]快照存儲單元,用于存儲同步文件夾上一次進行文件同步的快照;
[0023]請求單元,用于向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號;
[0024]判斷單元,用于當通過云服務器的認證后,從云服務器獲取云端文件列表;同時從終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失;若列表項三方有缺失,則由第一同步單元進行處理;若列表項三方有缺失,則由第二同步單元進行處理;
[0025]第一同步單元,用于執(zhí)行本地或者云端文件的刪除、下載或者上傳操作;
[0026]第二同步單元,用于執(zhí)行本地或者云端文件的更新操作。
[0027]可選地,所述終端和云服務器每進行一次文件同步后,該終端的快照存儲單元存儲同步文件夾中各同步文件的快照。
[0028]可選地,當終端同步文件夾的文件發(fā)生變化時,請求單元向云服務器發(fā)送文件同步請求,或者每經過一個時間間隔閾值時,請求單元向云服務器發(fā)送文件同步請求。
[0029]較佳地,所述第一同步單元,用于如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云端文件刪除;
[0030]如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地;
[0031]如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除。
[0032]如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端;
[0033]所述第二同步單元,用于如果三方列表無缺失,通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步;通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
[0034]優(yōu)選地,所述終端還包括云端文件列表存儲單元,用于預先存儲同步文件夾上一次進行文件同步的云端文件列表,當云端文件列表發(fā)生更新時,終端更新云端文件列表存儲單元中存儲的云端文件列表。
[0035]從上面所述可以看出,本發(fā)明提供的文件同步方法及其終端通過增加快照與本地、云端的對比,避免所有文件都采用文件MD5值來計算,節(jié)省了計算時間,加快了同步效率。本發(fā)明能夠解決減少云服務器的處理量,提升了文件同步的速度,通過云服務器同步信息的效率更高、改善了用戶體驗。
【專利附圖】
【附圖說明】
[0036]圖1為本發(fā)明實施例的文件同步方法的流程圖;
[0037]圖2為本發(fā)明實施例中并列列表的排列示意圖;
[0038]圖3為本發(fā)明實施例實現(xiàn)文件同步的終端的結構框圖。
【具體實施方式】
[0039]為使本發(fā)明的目的、技術方案和優(yōu)點更加清楚明白,以下結合具體實施例,并參照附圖,對本發(fā)明進一步詳細說明。
[0040]參考圖1,其為本發(fā)明實施例文件同步方法的流程圖,所述文件同步方法包括:
[0041]步驟101、終端預先存儲同步文件夾上一次進行文件同步的快照。
[0042]其中所述快照是指定對一個文件的所有屬性(包含云端和本地)一個完全可用拷貝,該拷貝包括同步文件在完成同步后的映像。當云端和本地進行同步后,終端獲取各同步文件的云端屬性和本地屬性,并將其轉換成一個包含云端屬性和本地屬性的集合對象,這個集合對象就是快照。
[0043]較佳地,云服務器和終端每進行一次文件同步后,終端就會存儲同步文件夾中各同步文件的快照。
[0044]步驟102、所述終端向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號。用戶通過賬號和密碼登錄客戶端,每個用戶在客戶端對應有屬于自己的獨立的同步文件夾??梢愿鶕脩粼O定,觸發(fā)自動同步文件或者定時同步文件。當本地同步文件夾發(fā)生改變需要同步到云端或者是云端的同步文件夾被其他端改變需要同步到本地時,本地終端觸發(fā)自動同步文件。
[0045]所述終端同云服務器網絡連接,所述終端可以是手機、電腦、數(shù)碼相框、相機等各種數(shù)碼設備。
[0046]所述云服務器包括云存儲管理服務器、云存儲讀寫服務器和云存儲空間,所述云存儲空間包括云端同步文件夾,該云端同步文件夾用于存儲用戶的同步文件,所述云存儲管理服務器包括云存儲空間中存儲的文件的地址的文件地址列表,以及注冊用戶列表、用戶終端列表、云端文件列表。所述注冊用戶列表記錄所述云存儲服務器用戶的信息,所述用戶終端列表記錄注冊和登陸相同用戶的終端的信息,所述云端文件列表記錄該用戶在所述云端同步文件夾中存儲的文件的列表。所述云存儲讀寫服務器根據云存儲管理服務器的指令和文件地址,對所述云端同步文件夾中的文件執(zhí)行相應的更新操作。所述更新操作可以包括上傳、下載、刪除、更新等。
[0047]終端將用戶登陸信息和終端信息發(fā)送給所述云服務器,所述云服務器接收用戶登陸信息和終端信息,并將用戶登陸信息和終端信息同注冊用戶列表和用戶終端列表比對,判斷所述用戶是否是合法用戶,判斷登陸終端是否是合法終端,若是,則進入步驟103,若否,則工作結束。[0048]步驟103、通過云服務器認證后,所述終端從云服務器獲取云端文件列表。
[0049]優(yōu)選地,終端也可以預先存儲同步文件夾上一次進行文件同步的云端文件列表。那么,當云端文件列表發(fā)生更新時,終端只需相應地更新終端存儲的云端文件列表,無需重新獲取云端文件列表,可以縮短終端獲取云端文件列表的時間。
[0050]步驟104、所述終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失。若列表項三方有缺失,貝1J進入步驟105 ;若列表項三方無缺失,則進入步驟106。
[0051]所述本地文件列表記錄該用戶在所述終端的同步文件夾中存儲的文件的列表。由于本地預存了同步文件夾上一次進行文件同步的快照,因此快照文件列表記錄用戶在所述終端的上一次同步后同步文件夾中存儲的文件的列表。
[0052]作文本發(fā)明的一個實施例,將三方按照如圖2所示的并列列表中,第一列為本地文件列表,第二列為快照文件列表,第三列為云端文件列表,三方并列地排列在一個列表中。分別遍歷本地文件列表、快照文件列表和云端文件列表的列表項,判斷某個文件是否在三方列表中有缺失。例如,判斷三方列表中是否都有文件A,可以先遍歷本地文件列表,然后遍歷快照文件列表,再遍歷云端文件列表。結束文件A的缺失判斷后,可以繼續(xù)依次進行文件C、文件D、文件S的缺失判斷。當本地文件列表中的所有文件都結束缺失判斷后,可以繼續(xù)進行快照文件列表和云端文件列表的文件缺失判斷(文件W、文件E、文件H和文件I )。優(yōu)選地,列表中的每個文件僅進行一次缺失判斷,以避免重復判斷,提高對比速度。
[0053]需要說明的是,可以調整三方列表在并列列表中的排列順序,也可以改變列表項的遍歷順序,并不限于上述實施例。
[0054]步驟105、執(zhí)行本地或者云端文件的刪除、下載或者上傳操作。
[0055]具體地,將三方列表放到一個并列列表中,遍歷該并列列表的列表項,根據每列的本地、云端和快照的文件數(shù)據,對比出該列的操作,如下:
[0056]如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云%5文件刪除。
[0057]如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地。
[0058]如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除。
[0059]如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端。
[0060]如果快照不存在,亦即終端沒有同云服務器進行過文件同步,無法形成三方列表,則執(zhí)行云端文件下載操作。
[0061]步驟106、執(zhí)行本地或者云端文件的更新操作。
[0062]具體地,在上述列表中,如果三方列表無缺失,通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步;通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
[0063]優(yōu)選地,當終端后臺更新需要同步的文件時,同時將更新過程顯示到UI層。[0064]步驟107、終端存儲同步文件夾完成本次文件同步后的快照。
[0065]作為本發(fā)明的一個較佳實施例,當完成本次文件同步后,終端存儲同步文件夾完成本次文件同步后的快照,以便終端同云服務器進行下一次文件同步時獲取快照文件列表。
[0066]在本實施例中,服務器端的文件同步到客戶端的同步文件夾中以及客戶端同步文件夾中的文件同步到服務器端均采用斷點續(xù)傳同步和文件分片傳輸機制。由于采用文件分片傳輸,當上傳經修改的文件時,會對文件分片進行上傳傳輸。同時由于斷點續(xù)傳機制,當用戶沒有對該片文件進行修改,會觸發(fā)秒傳操作。這樣只上傳修改的分片,有利于加速上傳并減少流量使用。
[0067]通過本發(fā)明上述實施例的文件同步方法,本發(fā)明還提供了一種實現(xiàn)文件同步的終端,如圖3所示,所述終端包括:
[0068]快照存儲單元301,用于存儲同步文件夾上一次進行文件同步的快照。具體如上述實施例所述。
[0069]所述快照是指當云服務器和終端進行同步后,終端獲取各同步文件的云端屬性和本地屬性,并將其轉換成一個包含云端屬性和本地屬性的集合對象。優(yōu)選地,所述終端和云服務器每進行一次文件同步后,該終端的快照存儲單元301存儲同步文件夾中各同步文件的快照。
[0070]請求單元302,用于向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號。具體如上述實施例所述。
[0071]可以根據用戶設定,觸發(fā)自動同步文件或者定時同步文件??梢栽O定當終端同步文件夾的文件發(fā)生變化時,請求單元302立即觸發(fā)自動同步文件,即請求單元302立即向云服務器發(fā)送文件同步請求。也可以根據用戶需要設定時間間隔閾值,每經過一個時間間隔閾值時,請求單元302便立即向云服務器發(fā)送文件同步請求。
[0072]判斷單元303,用于當通過云服務器的認證后,從云服務器獲取云端文件列表;同時從終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失;若列表項三方有缺失,則由第一同步單元304進行處理;若列表項三方有缺失,則由第二同步單元305進行處理。具體如上述實施例所述。
[0073]優(yōu)選地,所述終端還包括云端文件列表存儲單元306,用于預先存儲同步文件夾上一次進行文件同步的云端文件列表。當云端文件列表發(fā)生更新時,終端只需相應地更新云端文件列表存儲單元306中存儲的云端文件列表,無需重新獲取云端文件列表,可以縮短終端獲取云端文件列表的時間。
[0074]第一同步單元304、用于執(zhí)行本地或者云端文件的刪除、下載或者上傳操作。具體如上述實施例所述。
[0075]具體地,將三方列表放到一個并列列表中,遍歷該并列列表的列表項,根據每列的本地、云端和快照的文件數(shù)據,對比出該列的操作,如下:
[0076]如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云%5文件刪除。
[0077]如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地。
[0078]如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除。
[0079]如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端。
[0080]如果快照不存在,亦即終端沒有同云服務器進行過文件同步,則執(zhí)行云端文件下載操作。
[0081]第二同步單元305、用于執(zhí)行本地或者云端文件的更新操作。具體如上述實施例所述。
[0082]具體地,在上述列表中,如果三方列表無缺失,通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步;通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
[0083]如上所述,本發(fā)明提供的文件同步方法及其終端通過增加快照與本地、云端的對t匕,避免所有文件都采用文件MD5值來計算,節(jié)省了計算時間,加快了同步效率。本發(fā)明能夠解決減少云服務器的處理量,提升了文件同步的速度,通過云服務器同步信息的效率更高、改善了用戶體驗。
[0084]所屬領域的普通技術人員應當理解:以上所述僅為本發(fā)明的具體實施例而已,并不用于限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
【權利要求】
1.一種文件同步方法,其特征在于,包括: 51、終端存儲同步文件夾上一次進行文件同步的快照; 52、所述終端向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號; 53、通過云服務器的認證后,所述終端從云服務器獲取云端文件列表; 54、所述終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失;若列表項三方有缺失,則進入步驟5 ;若列表項三方無缺失,則進入步驟6 ; 55、執(zhí)行本地或者云端文件的刪除、下載或者上傳操作; 56、執(zhí)行本地或者云端文件的更新操作。
2.根據權利要求1所述的文件同步方法,其特征在于,所述快照是指當云服務器和終端進行同步后,終端獲取各同步文件的云端屬性和本地屬性,并將其轉換成一個包含云端屬性和本地屬性的集合對象。
3.根據權利要求2所述的文件同步方法,其特征`在于,所述終端和云服務器每進行一次文件同步后,該終端存儲同步文件夾中各同步文件的快照。
4.根據權利要求1所述的文件同步方法,其特征在于,所述執(zhí)行本地或者云端文件的刪除、下載或者上傳操作的步驟具體包括: 如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云端文件刪除; 如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地; 如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除; 如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端。
5.根據權利要求1所述的文件同步方法,其特征在于,所述執(zhí)行本地或者云端文件的更新操作的步驟具體包括: 通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步; 通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
6.一種實現(xiàn)文件同步的終端,其特征在于,所述終端包括: 快照存儲單元,用于存儲同步文件夾上一次進行文件同步的快照; 請求單元,用于向云服務器發(fā)送文件同步請求,其中所述同步請求中攜帶有該終端的標識、該終端與云服務器進行文件同步的同步賬號; 判斷單元,用于當通過云服務器的認證后,從云服務器獲取云端文件列表;同時從終端獲取本地文件列表和快照文件列表,根據路徑將三方列表放到一個并列列表中,遍歷該并列列表的列表項,判斷三方有無缺失;若列表項三方有缺失,則由第一同步單元進行處理;若列表項三方有缺失,則由第二同步單元進行處理;第一同步單元,用于執(zhí)行本地或者云端文件的刪除、下載或者上傳操作; 第二同步單元,用于執(zhí)行本地或者云端文件的更新操作。
7.根據權利要求6所述的實現(xiàn)文件同步的終端,其特征在于,所述終端和云服務器每進行一次文件同步后,該終端的快照存儲單元存儲同步文件夾中各同步文件的快照。
8.根據權利要求6所述的實現(xiàn)文件同步的終端,其特征在于,當終端同步文件夾的文件發(fā)生變化時,請求單元向云服務器發(fā)送文件同步請求,或者每經過一個時間間隔閾值時,請求單元向云服務器發(fā)送文件同步請求。
9.根據權利要求6所述的實現(xiàn)文件同步的終端,其特征在于,所述第一同步單元,用于如果本地文件數(shù)據項不存在,快照文件記錄項存在,云端文件數(shù)據項存在,則將云端文件刪除; 如果本地文件數(shù)據項不存在,快照文件記錄項不存在,云端文件數(shù)據項存在,則將云端文件下載至本地; 如果云端文件數(shù)據項不存在,快照文件記錄項存在,本地文件數(shù)據項存在,則將本地文件刪除。 如果云端文件數(shù)據項不存在,快照文件記錄項不存在,本地文件數(shù)據項存在,則將本地文件上傳至云端; 所述第二同步單元,用于如果三方列表無缺失,通過本地與快照的文件路徑和MD5值對比,判斷本地文件的內容是否發(fā)生改變,如果是,將云端文件更新,使其與本地文件同步;通過云端與快照的文件路徑和MD5值對比,判斷云端文件的內容是否發(fā)生改變,如果是,則將本地文件更新,使其與云端文件同步。
10.根據權利要求6所述的實現(xiàn)文件同步的終端,其特征在于,所述終端還包括云端文件列表存儲單元,用于預先存儲同步文件夾上一次進行文件同步的云端文件列表,當云端文件列表發(fā)生更新時,終端更新云端文件列表存儲單元中存儲的云端文件列表。
【文檔編號】H04L29/08GK103634406SQ201310674444
【公開日】2014年3月12日 申請日期:2013年12月11日 優(yōu)先權日:2013年12月11日
【發(fā)明者】劉暢, 樊世彬 申請人:北京榮之聯(lián)科技股份有限公司