本發明涉及存儲技術領域,特別涉及一種分布式存儲的實現方法及裝置。
背景技術:
分布式存儲是相對集中存儲(磁盤陣列)提出的概念,就是以大容量硬盤的服務器為存儲介質,通過軟件管理形成存儲供用戶使用。分布式存儲可以提供各種訪問協議,可以支持塊和對象等存儲模式。
現有技術的分布式存儲中,當接收到對數據的讀寫等操作請求時,對需要處理的數據的主本和副本進行處理,當主本和副本都處理完成后,向發來操作請求的用戶返回響應。
通過上述描述可見,用戶需要在主本和副本都處理完成后,才能接收到響應,等待時間較長。
技術實現要素:
本發明實施例提供了一種分布式存儲的實現方法及裝置,能夠縮短用戶的等待時間。
一方面,本發明實施例提供了一種分布式存儲的實現方法,包括:
接收至少一個操作請求;
針對每個所述操作請求,執行以下處理:
根據當前操作請求,對所述當前操作請求對應的待處理文件的主本進行處理;
對所述主本處理完成后,向所述當前操作請求對應的用戶返回響應;
根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理。
進一步地,
在所述接收至少一個操作請求之后,進一步包括:
確定所述至少一個操作請求的優先級;
根據所述至少一個操作請求的優先級,確定所述至少一個操作請求的處理順序;
按照所述處理順序,處理所述至少一個操作請求。
進一步地,
所述確定所述至少一個操作請求的優先級,包括:
根據每個所述操作請求對應的用戶、應用、sla(service-levelagreement,服務等級協議)和待處理文件,確定所述至少一個操作請求的優先級。
進一步地,
該方法進一步包括:
預先設置每個用戶的等級級別值,設置每個應用的重要程度值,設置每個sla的危險性得分;
預先設置用戶、應用、sla和待處理文件的指標占比;
所述根據每個所述操作請求對應的用戶、應用、sla和待處理文件,確定所述至少一個操作請求的優先級,包括:
確定每個所述操作請求對應的待處理文件的熱度值;
分別根據每個所述操作請求對應的用戶、應用、sla、待處理文件的熱度值和公式一,計算出每個所述操作請求的優先級值,所述公式一為:
y=h×h+a×a+s×s+w×w;
其中,y為所述優先級值,h為用戶的等級級別值,a為應用的重要程度值,s為sla的危險性得分,w為待處理文件的熱度值,h為用戶的指標占比,a為應用的指標占比,s為sla的指標占比,w為待處理文件的指標占比;
根據每個所述操作請求的優先級值,確定所述至少一個操作請求的優先級。
進一步地,
所述根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理,包括:
a1:針對所述當前操作請求,設置處理標志;
a2:判斷所述當前操作請求的處理標志是否是未完成,如果是,則執行a3,否則,結束當前流程;
a3:判斷處理所述當前操作請求的進程是否已退出,如果是,則發起同步進程,利用所述同步進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成,否則,利用所述當前操作請求的進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成。
另一方面,本發明實施例提供了一種分布式存儲的實現裝置,包括:
接收單元,用于接收至少一個操作請求;
處理單元,用于針對每個所述操作請求,執行以下處理:
根據當前操作請求,對所述當前操作請求對應的待處理文件的主本進行處理;
對所述主本處理完成后,向所述當前操作請求對應的用戶返回響應;
根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理。
進一步地,
所述處理單元,進一步用于執行:
確定所述至少一個操作請求的優先級;
根據所述至少一個操作請求的優先級,確定所述至少一個操作請求的處理順序;
按照所述處理順序,處理所述至少一個操作請求。
進一步地,
所述處理單元,在執行所述確定所述至少一個操作請求的優先級時,具體用于執行:根據每個所述操作請求對應的用戶、應用、sla和待處理文件,確定所述至少一個操作請求的優先級。
進一步地,
該裝置進一步包括:
保存單元,用于保存每個用戶的等級級別值,每個應用的重要程度值,每個sla的危險性得分;以及用戶、應用、sla和待處理文件的指標占比;
所述處理單元,用于執行:
確定每個所述操作請求對應的待處理文件的熱度值;
分別根據每個所述操作請求對應的用戶、應用、sla、待處理文件的熱度值和公式一,計算出每個所述操作請求的優先級值,所述公式一為:
y=h×h+a×a+s×s+w×w;
其中,y為所述優先級值,h為用戶的等級級別值,a為應用的重要程度值,s為sla的危險性得分,w為待處理文件的熱度值,h為用戶的指標占比,a為應用的指標占比,s為sla的指標占比,w為待處理文件的指標占比;
根據每個所述操作請求的優先級值,確定所述至少一個操作請求的優先級。
進一步地,
所述處理單元,在執行所述根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理時,具體用于執行:
a1:針對所述當前操作請求,設置處理標志;
a2:判斷所述當前操作請求的處理標志是否是未完成,如果是,則執行a3,否則,結束當前流程;
a3:判斷處理所述當前操作請求的進程是否已退出,如果是,則發起同步進程,利用所述同步進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成,否則,利用所述當前操作請求的進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成。
在本發明實施例中,接收到用戶發出的操作請求后,當待處理文件的主本處理完成即可向用戶返回響應,無需等到該主本的所有副本都處理完成后才返回響應,縮短了用戶的等待時間。
附圖說明
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。
圖1是本發明一實施例提供的一種分布式存儲的實現方法的流程圖;
圖2是本發明一實施例提供的另一種分布式存儲的實現方法的流程圖;
圖3是本發明一實施例提供的一種分布式存儲的實現裝置的示意圖;
圖4是本發明一實施例提供的另一種分布式存儲的實現裝置的示意圖。
具體實施方式
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例,基于本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動的前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
如圖1所示,本發明實施例提供了一種分布式存儲的實現方法,該方法可以包括以下步驟:
步驟101:接收至少一個操作請求;
步驟102:針對每個所述操作請求,執行以下處理:
根據當前操作請求,對所述當前操作請求對應的待處理文件的主本進行處理;
對所述主本處理完成后,向所述當前操作請求對應的用戶返回響應;
根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理。
在本發明實施例中,接收到用戶發出的操作請求后,當待處理文件的主本處理完成即可向用戶返回響應,無需等到該主本的所有副本都處理完成后才返回響應,縮短了用戶的等待時間。
為了提高用戶體驗,在本發明一實施例中,在所述接收至少一個操作請求之后,進一步包括:
確定所述至少一個操作請求的優先級;
根據所述至少一個操作請求的優先級,確定所述至少一個操作請求的處理順序;
按照所述處理順序,處理所述至少一個操作請求。
在本發明實施例中,將接收到的至少一個操作請求劃分出優先級,按照優先級的順序進行處理,在操作請求較多的情況下,能夠及時優先處理優先級較高的操作請求,能夠提高用戶體驗。舉例來說,有些操作請求比較緊急,有些操作請求不緊急,這是,確定緊急的操作請求的優先級高于不緊急的操作請求,優先處理緊急的操作請求,這是緊急的操作請求的用戶的用戶體驗較好,而不緊急的操作請求的用戶的用戶體驗也不會有多大落差,整體來說,提高了用戶的用戶體驗。
在本發明一實施例中,所述確定所述至少一個操作請求的優先級,包括:
根據每個所述操作請求對應的用戶、應用、sla和待處理文件,確定所述至少一個操作請求的優先級。
在本發明實施例中,從用戶、應用、sla和待處理文件四個角度來綜合確定操作請求的優先級,使得確定出的優先級更加合理,更加符合用戶需求,能夠進一步提高用戶體驗。
在本發明一實施例中,該方法進一步包括:
預先設置每個用戶的等級級別值,設置每個應用的重要程度值,設置每個sla的危險性得分;
預先設置用戶、應用、sla和待處理文件的指標占比;
所述根據每個所述操作請求對應的用戶、應用、sla和待處理文件,確定所述至少一個操作請求的優先級,包括:
確定每個所述操作請求對應的待處理文件的熱度值;
分別根據每個所述操作請求對應的用戶、應用、sla、待處理文件的熱度值和公式一,計算出每個所述操作請求的優先級值,所述公式一為:
y=h×h+a×a+s×s+w×w;
其中,y為所述優先級值,h為用戶的等級級別值,a為應用的重要程度值,s為sla的危險性得分,w為待處理文件的熱度值,h為用戶的指標占比,a為應用的指標占比,s為sla的指標占比,w為待處理文件的指標占比;
根據每個所述操作請求的優先級值,確定所述至少一個操作請求的優先級。
在本發明實施例中,將用戶、應用、sla和待處理文件都用具體的數值來區分,數值的大小體現了該指標對優先級值的影響。
舉例來說,針對用戶這個指標,用戶的等級級別值的范圍可以是[0,100],數值越大,說明用戶的等級級別越高,越重要。每個用戶的等級級別值可以根據crm(customerrelationshipmanagement,客戶關系管理)評價來確定。另外,用戶這個指標的指標占比可以為40%。
針對應用這個指標,應用的重要程度值的范圍可以是[0,100],數值越大,說明應用的越重要。每個應用的重要程度值可以根據crm及應用評價來確定。另外,應用這個指標的指標占比可以為25%。
針對sla這個指標,sla的危險性得分的范圍可以是[0,100],數值越大,說明sla的越重要。每個sla的危險性得分可以根據統計指標來確定。具體地,可以根據sla中的具體內容來確定。另外,sla這個指標的指標占比可以為20%。
針對待處理文件這個指標,待處理文件的熱度值的范圍可以是[0,100],數值越大,說明待處理文件的熱度越高,越重要。每個待處理文件的熱度值可以根據統計指標來確定。每個待處理文件的熱度值可以根據待處理文件的處理次數確定,具體地,處理次數越多,熱度值越高,特別地,可以將第一次處理的待處理文件的熱度值設置為100。另外,待處理文件這個指標的指標占比可以為15%。
在本發明一實施例中,所述根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理,包括:
a1:針對所述當前操作請求,設置處理標志;
a2:判斷所述當前操作請求的處理標志是否是未完成,如果是,則執行a3,否則,結束當前流程;
a3:判斷處理所述當前操作請求的進程是否已退出,如果是,則發起同步進程,利用所述同步進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成,否則,利用所述當前操作請求的進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成。
在本發明實施例中,設置了處理標志,通過處理標志來體現副本是否處理完成,以保證數據的一致性。該過程可以通過reqnode-1acknode-1{flagnode-2,,flagnode-n},node-1到node-n是指存儲文字,reqnode-1是指操作請求,acknode-1是指響應,flag是指處理標志。flag可以通過系統記錄并管理。通過本發明實施例,可以保證數據一致性在錯時模式下確保實現,不影響后續的其他操作。在這種模式下,用戶的等待時間減少,用戶體驗有明顯的提升。
如圖2所示,本發明實施例提供了一種分布式存儲的實現方法,該方法可以包括以下步驟:
步驟201:預先設置每個用戶的等級級別值,設置每個應用的重要程度值,設置每個sla的危險性得分,預先設置用戶、應用、sla和待處理文件的指標占比。
用戶、應用、sla和待處理文件的指標占比之和為1。
舉例來說,預先設置用戶a的等級級別值為90,用戶b的等級級別值為80,用戶c的等級級別值為60。預先設置應用a的重要程度值為50,應用b的重要程度值為70,應用c的重要程度值為60。預先設置sla1的危險性得分為70,sla2的危險性得分為60,sla3的危險性得分為80。
預先設置用戶、應用、sla和待處理文件這幾個指標的指標占比分別為:40%、25%、20%、15%。
步驟202:接收至少一個操作請求。
舉例來說,接收到操作請求a、操作請求b、操作請求c。
步驟203:確定每個操作請求對應的待處理文件的熱度值。
具體地,根據當前待處理文件的處理次數,確定出當前待處理文件的熱度值。
舉例來說,操作請求a對應待處理文件a,操作請求b對應待處理文件b,操作請求c對應待處理文件c。確定出待處理文件a的熱度值為30,待處理文件b的熱度值為60,待處理文件c的熱度值為50。
步驟204:分別根據每個操作請求對應的用戶、應用、sla、待處理文件的熱度值和公式一,計算出每個操作請求的優先級值,公式一為:
y=h×h+a×a+s×s+w×w;
其中,y為所述優先級值,h為用戶的等級級別值,a為應用的重要程度值,s為sla的危險性得分,w為待處理文件的熱度值,h為用戶的指標占比,a為應用的指標占比,s為sla的指標占比,w為待處理文件的指標占比。
具體地,確定每個操作請求對應的用戶、應用、sla。
舉例來說,確定操作請求a對應用戶a、應用a和sla1;確定操作請求b對應用戶b、應用b和sla2;確定操作請求c對應用戶c、應用c和sla3。
各個操作請求對應的用戶、應用、sla和待處理文件這幾個指標的指標占比均為:40%、25%、20%、15%。
針對操作請求a,用戶a的等級級別值為90,應用a的重要程度值為50,sla1的危險性得分為70,待處理文件a的熱度值為30。根據公式一計算出操作請求a的優先級值為:90×40%+50×25%+70×20%+30×15%=67。
同樣,可以計算出操作請求b的優先級值為:80×40%+70×25%+60×20%+60×15%=70.5。
可以計算出操作請求c的優先級值為:60×40%+60×25%+80×20%+50×15%=62.5。
步驟205:根據每個操作請求的優先級值,確定至少一個操作請求的優先級。
舉例來說,根據操作請求a、操作請求b、操作請求c的優先級值,可以確定操作請求b的優先級高于操作請求a,操作請求a的優先級高于操作請求c。
步驟206:根據該至少一個操作請求的優先級,確定該至少一個操作請求的處理順序。
舉例來說,根據操作請求a、操作請求b、操作請求c的優先級,確定出操作請求a、操作請求b、操作請求c的處理順序是操作請求b、操作請求a、操作請求c。
步驟207:按照處理順序,處理該至少一個操作請求,并針對每個操作請求,執行以下處理:
根據當前操作請求,對當前操作請求對應的待處理文件的主本進行處理;
對主本處理完成后,向當前操作請求對應的用戶返回響應;
根據當前操作請求和主本,對主本對應的副本進行相應的處理。
在本發明實施例中,存儲文件時會把文件按照設置的讀寫數據塊大小進行切分,形成數據單元,利用一定的算法計算這些數據單元可以存儲的位置點,然后進行讀寫即可完成數據的持久化存儲。而在多個副本存儲時,一般是對主本進行操作,副本從主本上進行復制,這樣保證傳輸的流量最小,節約帶寬和傳輸壓力,存儲網內部仍然有傳輸流量,現在的云中心組網結構,業務流和內部的存儲流式不同網絡。
在本發明實施例中,基于用戶、應用和sla協議等指標的信息,確定每次讀寫數據的優先級,在有沖突或積壓排隊時通過優先級調整順序,實現有差別的運行性能。
在本發明實施例中,每個操作請求對應的優先級值與后續調用一起傳遞給最終執行程序。因為分布式存儲的優點是分散執行,所以可能造成排隊的點主要有兩個環節:數據在網絡里傳輸的通道帶寬不夠或者在具體寫入存儲介質時進程過多造成排隊。第一個情況是系統獲取傳輸網絡的延遲和丟包實時數據,在達到設置的門限值時自動調整傳輸通道;第二個場景,排隊隊列的待處理任務進行優先級從大到小排序,如果優先級一樣則任務提交時間久的優先。
在本發明實施例中,在故障恢復時,可以實現有差別的對待,即高優先級的先恢復,改變了分布式存儲對數據一視同仁的技術做法。舉例來說,一般3t的磁盤在萬兆網絡環境里恢復整盤的數據大概需要3-4個小時,在此期間用戶的操作請求會受到很大影響。在無法改變整盤恢復時長的前提下,通過本發明實施例,可以盡量減少有關用戶的等待時間,給予重要用戶或應用無影響的使用感受。
在本發明實施例中,在確保數據一致性的基礎上,從根本上改變了用戶的可用性體驗,并且不受副本數據的影響,即副本數據增加不會改變用戶可用性體驗。
在本發明實施例中,分布式存儲能達到最終一致性,充分考慮到用戶體驗,這個最終一致的時間窗口,盡可能的對用戶透明,保障用戶感知到一致性。本發明實施例通過數據的多份異步復制來實現系統的高可用和數據的最終一致性。用戶感知到的一致性的時間窗口則取決于數據復制到一致狀態的時間。基于這些分布式存儲系統的特點,本發明具體實現方法除策略上調控外,通過更強的性能來確保技術理論上和用戶使用體驗上的可行性。
在本發明實施例中,增加原子單元(存儲對象)的讀寫操作記錄,包括標志、時間、耗時長等信息,結合原子單元所屬的文件(或歸屬的其他粒度),統計出冷熱文件、原子單元操作頻次、發生容量等性能指標。這些指標進一步可以應用到確定用戶的等級級別值、應用的重要程度值、sla的危險性得分、待處理文件的熱度值等,作為客觀指標體現在優先級排序中。
在本發明實施例中,首先一個文件按照系統缺省設置的讀寫塊大小拆分為等大小的數據塊(最后一個剩余的可不是等大小),然后通過算法計算獲得每個數據塊可以寫入的磁盤位置;在磁盤上執行寫入或讀取。從用戶發起讀寫請求到完成這個請求,主要過程是數據傳輸(傳輸線路及網絡設備)、分拆為對象及對象寫入磁盤介質幾個環節。
本發明實施例可以在以下應用場景中發揮作用:
a)用戶正常應用使用發起的讀寫請求;
b)有磁盤損壞替換新盤后數據同步;
無論哪種應用場景,都可以通過本發明實施例調控,讓不同的用戶感受到不同的性能,提升用戶的滿意度和使用體驗。
本發明實施例可以實現故障恢復,舉例來說,一塊3t的sata磁盤替換后的數據同步大概需要3-4個小時。在這個過程中,用戶使用存儲的數據會受到影響。找出重要客戶、重要應用和熱數據優先恢復。在總時間不能變化的前提下,不同的用戶有不同的等待時間是合理的方法。其過程是正常訪問的逆操作,即根據當前磁盤上存儲的數據信息,從map關系里獲取數據歸屬,根據上層的歸屬確定哪些數據具有高優先級,哪些數據是低優先級。根據優先級順序,依次恢復數據。
在本發明實施例中,為了盡量縮短用戶等待的時間,采取多種提升性能的手段,比如增加ssd磁盤作為cache提升讀寫效率;通過采用軟件rdma(remotedirectmemoryaccess,遠程直接數據存取)和網絡設備的無損傳輸減輕存儲服務器的cpu負荷,加快數據在不同節點間的傳輸。
通過本發明實施例,能夠實現分布式存儲的qos(qualityofservice,服務質量),并且,能夠保證分布式存儲的cap,其中,cap指的是分區容錯(partitiontolerance)、數據一致性(consistency)和可用性(availability)。
本發明實施例以實際使用場景為依托,結合用戶信息及sla,使用優先級策略,為待處理數據排隊。在正常讀寫處理、故障恢復處理時根據優先級為用戶提供相符的使用感受。
在本發明實施例中,通過錯時實現的異步一致性策略,實現一致性和可用性的平衡,讓用戶有較好的使用感受。在分布式存儲常用技術方案的基礎上,考慮具體使用場景和用戶感受,基于策略提升整體性能,并基于策略為不同用戶提供針對性的服務,能夠讓分布式存儲得到更好的認可和應用。
如圖3、圖4所示,本發明實施例提供了一種分布式存儲的實現裝置。裝置實施例可以通過軟件實現,也可以通過硬件或者軟硬件結合的方式實現。從硬件層面而言,如圖3所示,為本發明實施例提供的一種分布式存儲的實現裝置所在設備的一種硬件結構圖,除了圖3所示的處理器、內存、網絡接口、以及非易失性存儲器之外,實施例中裝置所在的設備通常還可以包括其他硬件,如負責處理報文的轉發芯片等等。以軟件實現為例,如圖4所示,作為一個邏輯意義上的裝置,是通過其所在設備的cpu將非易失性存儲器中對應的計算機程序指令讀取到內存中運行形成的。本實施例提供的一種分布式存儲的實現裝置,包括:
接收單元401,用于接收至少一個操作請求;
處理單元402,用于針對每個所述操作請求,執行以下處理:
根據當前操作請求,對所述當前操作請求對應的待處理文件的主本進行處理;
對所述主本處理完成后,向所述當前操作請求對應的用戶返回響應;
根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理。
在本發明一實施例中,所述處理單元,進一步用于執行:
確定所述至少一個操作請求的優先級;
根據所述至少一個操作請求的優先級,確定所述至少一個操作請求的處理順序;
按照所述處理順序,處理所述至少一個操作請求。
在本發明一實施例中,所述處理單元,在執行所述確定所述至少一個操作請求的優先級時,具體用于執行:根據每個所述操作請求對應的用戶、應用、sla和待處理文件,確定所述至少一個操作請求的優先級。
在本發明一實施例中,進一步包括:
保存單元,用于保存每個用戶的等級級別值,每個應用的重要程度值,每個sla的危險性得分;以及用戶、應用、sla和待處理文件的指標占比;
所述處理單元,用于執行:
確定每個所述操作請求對應的待處理文件的熱度值;
分別根據每個所述操作請求對應的用戶、應用、sla、待處理文件的熱度值和公式一,計算出每個所述操作請求的優先級值,所述公式一為:
y=h×h+a×a+s×s+w×w;
其中,y為所述優先級值,h為用戶的等級級別值,a為應用的重要程度值,s為sla的危險性得分,w為待處理文件的熱度值,h為用戶的指標占比,a為應用的指標占比,s為sla的指標占比,w為待處理文件的指標占比;
根據每個所述操作請求的優先級值,確定所述至少一個操作請求的優先級。
在本發明一實施例中,所述處理單元,在執行所述根據所述當前操作請求和所述主本,對所述主本對應的副本進行相應的處理時,具體用于執行:
a1:針對所述當前操作請求,設置處理標志;
a2:判斷所述當前操作請求的處理標志是否是未完成,如果是,則執行a3,否則,結束當前流程;
a3:判斷處理所述當前操作請求的進程是否已退出,如果是,則發起同步進程,利用所述同步進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成,否則,利用所述當前操作請求的進程對所述主本對應的副本進行相應的處理,并在處理完成后,將所述處理標志修改為已完成。
上述裝置內的各單元之間的信息交互、執行過程等內容,由于與本發明方法實施例基于同一構思,具體內容可參見本發明方法實施例中的敘述,此處不再贅述。
本發明實施例提供了一種可讀介質,包括執行指令,當存儲控制器的處理器執行所述執行指令時,所述存儲控制器執行本發明實施例提供的任意一種分布式存儲的實現方法。
本發明實施例提供了一種存儲控制器,包括:處理器、存儲器和總線;
所述存儲器用于存儲執行指令,所述處理器與所述存儲器通過所述總線連接,當所述存儲控制器運行時,所述處理器執行所述存儲器存儲的執行指令,以使所述存儲控制器執行本發明實施例提供的任意一種分布式存儲的實現方法。
本發明各個實施例至少具有如下有益效果:
1、在本發明實施例中,接收到用戶發出的操作請求后,當待處理文件的主本處理完成即可向用戶返回響應,無需等到該主本的所有副本都處理完成后才返回響應,縮短了用戶的等待時間。
2、在本發明實施例中,將接收到的至少一個操作請求劃分出優先級,按照優先級的順序進行處理,在操作請求較多的情況下,能夠及時優先處理優先級較高的操作請求,能夠提高用戶體驗。
3、在本發明實施例中,在確保數據一致性的基礎上,從根本上改變了用戶的可用性體驗,并且不受副本數據的影響,即副本數據增加不會改變用戶可用性體驗,提高了用戶的用戶體驗。
需要說明的是,在本文中,諸如第一和第二之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個〃·····”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同因素。
本領域普通技術人員可以理解:實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述的存儲介質包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質中。
最后需要說明的是:以上所述僅為本發明的較佳實施例,僅用于說明本發明的技術方案,并非用于限定本發明的保護范圍。凡在本發明的精神和原則之內所做的任何修改、等同替換、改進等,均包含在本發明的保護范圍內。