欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種虛擬機熱備份方法和設備與流程

文檔序號:12040419閱讀:311來源:國知局
一種虛擬機熱備份方法和設備與流程
本發(fā)明涉及信息通信領域,尤其涉及一種虛擬機熱備份方法和設備。

背景技術:
隨著虛擬化技術應用的普及,虛擬機的高可靠性成為關注的重點。虛擬機熱備技術,也稱為虛擬機FT(FaultTolerance,容錯),借助于虛擬機本身可以跨平臺移植,與底層硬件無關等特性,實現了高效率、低成本的虛擬機容錯機制,成為保障虛擬機高可靠性的重要手段之一。為了實現數據同步,傳統虛擬機雙機熱備采用暫時終止虛擬機和服務的策略,通常由Primary-Backup(主備)方式同步虛擬機在內存、CPU(CentralProcessingUnit,中央處理機)、I/O((Input/Output,輸入/輸出)方面所做的改變。由主虛擬機定時產生Checkpoint(檢查點),而后將Checkpoint以異步方式傳送到備虛擬機,同時,主虛擬機以Speculative(預測)方式執(zhí)行客戶程序,在備虛擬機確認了新的Checkpoint之后,主虛擬機轉到正常執(zhí)行方式,主虛擬機上的客戶程序在生成Checkpoint期間被終止。這樣,對于在相鄰Checkpoint間產生大量臟數據的客戶程序,生成Checkpoint時將造成很長的主虛擬機掛起時間,使客戶程序無法運行。另外,對于在相鄰Checkpoint間僅產生很少臟數據的客戶程序,頻繁傳輸信息量不多的Checkpoint將因為DomU(虛擬機)和Dom0(虛擬機管理程序)資源競爭而影響客戶程序的正常執(zhí)行,導致雙機熱備性能和可用性大打折扣。

技術實現要素:
本發(fā)明的實施例提供一種虛擬機熱備份方法和設備,在實現數據備份同步時,根據虛擬機所產生的臟數量生成檢查點來對數據進行熱備份,這樣能夠有效降低虛擬機備份時對用戶業(yè)務的影響,提高了虛擬機業(yè)務的可用性。為達到上述目的,本發(fā)明的實施例采用如下技術方案:第一方面,提供一種虛擬機熱備份方法,包括:獲取主虛擬機當前業(yè)務產生的臟數據量;將所述臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成所述主虛擬機的檢查點,所述第二閾值大于所述第一閾值。結合第一方面,在第一方面的第一種可能實現的方式中,在獲取所述主虛擬機當前業(yè)務產生的臟數據量后,所述方法還包括:根據所述臟數據量或有限狀態(tài)機狀態(tài)中的預設周期更新所述有限狀態(tài)機的狀態(tài),以便于根據所述有限狀態(tài)機狀態(tài),將生成的所述主虛擬機的檢查點進行與所述有限狀態(tài)機的狀態(tài)對應的數據熱備份;其中,所述有限狀態(tài)機的狀態(tài)用于表示所述主虛擬機進行數據熱備份時產生的臟數據量的狀態(tài)。結合第一方面或第一方面的第一種可能實現的方式,在第一方面的第二種可能實現的方式中,所述方法還包括:在生成所述主虛擬機的檢查點的前一次正常執(zhí)行狀態(tài)中,將所述主虛擬機的冷頁面數據預先拷貝到第一緩沖區(qū),并將所述主虛擬機的熱頁面數據預先存儲到第二緩沖區(qū);所述生成所述主虛擬機的檢查點包括:將所述第一緩沖區(qū)中所述主虛擬機的冷頁面數據拷貝到所述檢查點中,并將所述第二緩沖區(qū)中所述主虛擬機的熱頁面數據拷貝到所述檢查點中。結合第一方面或第一方面的第二種可能實現的方式,在第一方面的第三種可能實現的方式中,所述將所述臟數據量與第一閾值和第二閾值進行比較,并根據比較結果生成所述主虛擬機的檢查點包括:若所述臟數據量小于所述第一閾值,則暫緩生成所述主虛擬機的檢查點,直至累積的所述臟數據量大于或等于所述第一閾值且小于所述第二閾值,生成所述主虛擬機的檢查點;若所述臟數據量大于或等于所述第二閾值,則暫緩生成所述主虛擬機的檢查點,直至累積的所述臟數據量達到第三閾值,生成所述檢查點并暫停所述主虛擬機,將所述檢查點通過冷遷移方式傳送到備虛擬機,所述第三閾值大于所述第二閾值;若所述臟數據量大于或等于所述第一閾值,且小于所述第二閾值,則生成所述主虛擬機的檢查點。結合第一方面或第一方面的第三種可能實現的方式,在第一方面的第四種可能實現的方式中,所述根據所述臟數據量更新有限狀態(tài)機的狀態(tài),以便于根據所述有限狀態(tài)機狀態(tài),對生成的所述主虛擬機的檢查點進行數據熱備份包括:若所述臟數據量大于或等于所述第一閾值且小于所述第二閾值,則控制有限狀態(tài)機的狀態(tài)為初始態(tài),進而在所述有限狀態(tài)機為初始態(tài)時對所述檢查點進行數據熱備份;若所述臟數據量小于所述第一閾值,則控制所述有限狀態(tài)機的狀態(tài)為低臟數據態(tài),進而在所述有限狀態(tài)機為低臟數據態(tài)時延長所述正常執(zhí)行狀態(tài),從而延遲所述主虛擬機進入所述掛起狀態(tài);若所述臟數據量大于或等于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)為高臟數據態(tài),進而當所述有限狀態(tài)機的狀態(tài)處于所述高臟數據態(tài)時,若所述臟數據量累積到所述第三閾值,則生成所述檢查點并暫停所述主虛擬機,將所述檢查點通過所述冷遷移方式傳送到所述備虛擬機,從而延遲所述主虛擬機進入所述掛起狀態(tài)。結合第一方面或第一方面的第四種可能實現的方式,在第一方面的第五種可能實現的方式中,所述根據所述臟數據量更新有限狀態(tài)機的狀態(tài),以便于根據所述有限狀態(tài)機狀態(tài),對生成所述主虛擬機的檢查點進行數據熱備份還包括:當所述有限狀態(tài)機的狀態(tài)為所述初始態(tài)時,若所述臟數據量小于所述第一閾值,則控制所述有限狀態(tài)機從所述初始態(tài)經過第一緩沖態(tài)轉移為所述低臟數據態(tài),進而在所述有限狀態(tài)機狀態(tài)為低臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述初始態(tài)時,若所述臟數據量大于或等于所述第二閾值時,則控制所述有限狀態(tài)機從所述初始態(tài)經過第二緩沖態(tài)轉移為所述高臟數據態(tài),進而在所述有限狀態(tài)機為所述高臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述高臟數據態(tài)時,若所述臟數據量小于所述第二閾值,則控制所述有限狀態(tài)機從所述高臟數據態(tài)經過第三緩沖態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述低臟數據態(tài)時,若所述臟數據量大于或等于第一閾值時,則控制所述有限狀態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第一緩沖態(tài)時,若所述臟數據量大于或等于所述第一閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第二緩沖態(tài)時,若所述臟數據量小于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第三緩沖態(tài)時,若所述臟數據量大于或等于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述高臟數據態(tài),進而在所述有限狀態(tài)機為所述高臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;其中,所述第一緩沖態(tài)為所述有限狀態(tài)機從所述初始態(tài)轉移為所述低臟數據態(tài)的緩沖態(tài),所述第二緩沖態(tài)為所述有限狀態(tài)機從所述初始態(tài)轉移為所述高臟數據態(tài)的緩沖態(tài),所述第三緩沖態(tài)為所述有限狀態(tài)機從所述高臟數據態(tài)轉移為所述初始態(tài)的緩沖態(tài)。結合第一方面或第一方面的第五種可能實現的方式,在第一方面的第六種可能實現的方式中,所述根據有限狀態(tài)機狀態(tài)中的預設周期更新所述有限狀態(tài)機的狀態(tài),以便于根據所述有限狀態(tài)機的狀態(tài),對生成的所述主虛擬機的檢查點進行數據熱備份包括:當所述有限狀態(tài)機的狀態(tài)為所述低臟數據態(tài)時,若所述有限狀態(tài)機處于所述低臟數據態(tài)的時間到達所述預設周期,則控制所述有限狀 態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述高臟數據態(tài)時,若所述有限狀態(tài)機處于所述高臟數據態(tài)的時間到達所述預設周期,則控制所述有限狀態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份。第二方面,提供一種設備,包括:獲取單元,用于獲取主虛擬機當前業(yè)務產生的臟數據量;第一處理單元,用于將所述臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成所述主虛擬機的檢查點,所述第二閾值大于所述第一閾值。結合第二方面,在第二方面的第一種可能實現的方式中,在獲取所述主虛擬機當前業(yè)務產生的臟數據量后,還包括:第二處理單元,用于根據所述臟數據量或有限狀態(tài)機狀態(tài)中的預設周期更新所述有限狀態(tài)機的狀態(tài),以便于根據所述有限狀態(tài)機狀態(tài),將生成的所述主虛擬機的檢查點進行與所述有限狀態(tài)機對應的數據熱備份;其中,所述有限狀態(tài)機的狀態(tài)用于表示所述主虛擬機進行數據熱備份時產生的臟數據量的狀態(tài)。結合第二方面或第二方面的第一種可能實現的方式,在第二方面的第二種可能實現的方式中,所述第一處理單元還用于:在生成所述主虛擬機的檢查點的前一次正常執(zhí)行狀態(tài)中,將所述主虛擬機的冷頁面數據預先拷貝到第一緩沖區(qū),并將所述主虛擬機的熱頁面數據預先存儲到第二緩沖區(qū);將所述第一緩沖區(qū)中所述主虛擬機的冷頁面數據拷貝到所述檢查點中,并將所述第二緩沖區(qū)中所述主虛擬機的熱頁面數據拷貝到所述檢查點中。結合第二方面或第二方面的第二種可能實現的方式,在第二方面的第三種可能實現的方式中,所述第一處理單元具體用于:若所述臟數據量小于所述第一閾值,則暫緩生成所述主虛擬機的檢查點,直至累積的所述臟數據量大于或等于所述第一閾值且小于所述第二閾值,生成所述主虛擬機的檢查點;若所述臟數據量大于或等于所述第二閾值,則暫緩生成所述主虛擬機的檢查點,直至累積的所述臟數據量達到第三閾值,生成所述檢查點并暫停所述主虛擬機,將所述檢查點通過冷遷移方式傳送到備虛擬機,所述第三閾值大于所述第二閾值;若所述臟數據量大于或等于所述第一閾值,且小于所述第二閾值,則生成所述主虛擬機的檢查點。結合第二方面或第二方面的第三種可能實現的方式,在第一方面的第四種可能實現的方式中,所述第二處理單元用于:若所述臟數據量大于或等于所述第一閾值且小于所述第二閾值,則控制有限狀態(tài)機的狀態(tài)為初始態(tài),進而在所述有限狀態(tài)機為初始態(tài)時對所述檢查點進行數據熱備份;若所述臟數據量小于所述第一閾值,則控制所述有限狀態(tài)機的狀態(tài)為低臟數據態(tài),進而在所述有限狀態(tài)機為低臟數據態(tài)時延長所述正常執(zhí)行狀態(tài),從而延遲所述主虛擬機進入所述掛起狀態(tài);若所述臟數據量大于或等于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)為高臟數據態(tài),進而當所述有限狀態(tài)機的狀態(tài)處于所述高臟數據態(tài)時,若所述臟數據量累積到所述第三閾值,則暫停所述主虛擬機,將所述主虛擬機的臟數據通過所述冷遷移方式傳送到所述備虛擬機,從而延遲所述主虛擬機進入所述掛起狀態(tài)。結合第二方面或第二方面的第四種可能實現的方式,在第二方面的第五種可能實現的方式中,所述第二處理單元還用于:當所述有限狀態(tài)機的狀態(tài)為所述初始態(tài)時,若所述臟數據量小于所述第一閾值,則控制所述有限狀態(tài)機從所述初始態(tài)經過第一緩沖態(tài)轉移為所述低臟數據態(tài),進而在所述有限狀態(tài)機狀態(tài)為低臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述初始態(tài)時,若所述臟數據量大于 或等于所述第二閾值時,則控制所述有限狀態(tài)機從所述初始態(tài)經過第二緩沖態(tài)轉移為所述高臟數據態(tài),進而在所述有限狀態(tài)機為所述高臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述高臟數據態(tài)時,若所述臟數據量小于所述第二閾值,則控制所述有限狀態(tài)機從所述高臟數據態(tài)經過第三緩沖態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述低臟數據態(tài)時,若所述臟數據量大于或等于第一閾值時,則控制所述有限狀態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第一緩沖態(tài)時,若所述臟數據量大于或等于所述第一閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第二緩沖態(tài)時,若所述臟數據量小于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述第三緩沖態(tài)時,若所述臟數據量大于或等于所述第二閾值,則控制所述有限狀態(tài)機的狀態(tài)轉移為所述高臟數據態(tài),進而在所述有限狀態(tài)機為所述高臟數據態(tài)時控制所述主虛擬機延長所述正常執(zhí)行狀態(tài),從而延遲進入所述掛起狀態(tài),以使得所述主虛擬機進行數據熱備份;其中,所述第一緩沖態(tài)為所述有限狀態(tài)機從所述初始態(tài)轉移為所述低臟數據態(tài)的緩沖態(tài),所述第二緩沖態(tài)為所述有限狀態(tài)機從所述初始態(tài)轉移為所述高臟數據態(tài)的緩沖態(tài),所述第三緩沖態(tài)為所述有限狀態(tài)機從所述高臟數據態(tài)轉移為所述初始態(tài)的緩沖態(tài)。結合第二方面或第二方面的第五種可能實現的方式,在第一方面的第六種可能實現的方式中,所述第二處理單元還用于:當所述有限狀態(tài)機的狀態(tài)為所述低臟數據態(tài)時,若所述有限狀態(tài)機處于所述低臟數據態(tài)的時間到達所述預設周期,則控制所述有限狀態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份;當所述有限狀態(tài)機的狀態(tài)為所述高臟數據態(tài)時,若所述有限狀態(tài)機處于所述高臟數據態(tài)的時間到達所述預設周期,則控制所述有限狀態(tài)機轉移為所述初始態(tài),進而在所述有限狀態(tài)機為所述初始態(tài)時對所述主虛擬機進行數據熱備份。本發(fā)明實施例提供一種虛擬機熱備份方法和設備,通過獲取主虛擬機當前業(yè)務產生的臟數據量,將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,并根據臟數據量或有限狀態(tài)機的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機狀態(tài),對生成的主虛擬機的檢查點進行與有限狀態(tài)機的狀態(tài)對應的數據熱備份,能夠降低虛擬機備份時對用戶業(yè)務的影響,提升了虛擬機業(yè)務的可用性。附圖說明為了更清楚地說明本發(fā)明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本發(fā)明實施例提供的一種虛擬機熱備份方法流程示意圖;圖2為本發(fā)明實施例提供的一種虛擬機熱備份方法流程示意圖;圖3為本發(fā)明實施例提供的一種現有技術中虛擬機雙機熱備功能框圖;圖4為本發(fā)明實施例提供的現有技術中主備虛擬機進行數據熱備份的時序框圖;圖5為本發(fā)明實施例提供的現有技術中客戶程序的執(zhí)行狀態(tài)與本發(fā)明客戶程序的執(zhí)行狀態(tài)的時序對比圖;圖6為本發(fā)明實施例提供的現有技術中客戶程序的執(zhí)行狀態(tài)與 本發(fā)明客戶程序的執(zhí)行狀態(tài)的時序對比圖;圖7為本發(fā)明實施例提供的現有技術中客戶程序的執(zhí)行狀態(tài)與本發(fā)明客戶程序的執(zhí)行狀態(tài)的時序對比圖;圖8為本發(fā)明實施例提供的一種狀態(tài)轉移與主虛擬機的臟數據量或預設周期的關系圖;圖9為本發(fā)明實施例提供的一種設備結構示意圖;圖10為本發(fā)明實施例提供的一種設備結構示意圖;圖11為本發(fā)明實施例提供的一種設備結構示意圖。具體實施方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。本發(fā)明實施例提供一種虛擬機熱備份方法,如圖1所示,包括:101、設備獲取主虛擬機當前業(yè)務產生的臟數據量。其中,該設備可以為計算機,主虛擬機和備虛擬機分別運行在兩臺計算機上。備虛擬機用來對主虛擬機上的數據進行熱備份,通常由(Primary-Backup,主備用)方案來實現,以防止主虛擬機因為計算機硬件損壞和軟件故障造成的虛擬機失效和服務停頓。其中,臟數據是指主虛擬機最新更新的數據,包括新更改的數據或新增加的數據等。102、設備將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,第二閾值大于第一閾值。示例性的,若主虛擬機產生的臟數據量小于第一閾值,則暫緩生成主虛擬機的Checkpoint(檢查點),直至累積的臟數據量大于或等于第一閾值且小于第二閾值,控制主虛擬機進入掛起狀態(tài)并生成Checkpoint,可以避免多次傳輸信息量較少的Checkpoint給客戶程序造成的干擾;若臟數據量大于或等于第二閾值,則暫緩生成主虛擬機的Checkpoint,直至累積的臟數據量達到第三閾值,生成所述檢查點并暫停主虛擬機,將檢查點通過冷遷移方式傳送至備虛擬機,而后控制主虛擬機進入Speculative(預測)執(zhí)行狀態(tài),以避免多次生成大量臟數據Checkpoint造成的虛擬機的長時間掛起而導致客戶程序無法運行;若主虛擬機累積的臟數據量大于或等于第一閾值,且小于第二閾值,則生成主虛擬機的檢查點并進行數據熱備份,即進入正常的掛起虛擬機、正常執(zhí)行狀態(tài)和預測執(zhí)行狀態(tài)。其中,第二閾值大于第一閾值,第三閾值大于第二閾值。本發(fā)明實施例提供一種虛擬機熱備份方法,通過獲取主虛擬機當前業(yè)務產生的臟數據量,將臟數據量與第一閾值和第二閾值進行比較,第二閾值大于第一閾值,根據比較結果生成主虛擬機的檢查點,能夠有效降低虛擬機備份時對用戶業(yè)務的影響,提升了虛擬機業(yè)務的可用性。本發(fā)明又一實施例提供一種虛擬機熱備份方法,如圖2所示,包括:201、設備獲取主虛擬機當前業(yè)務產生的臟數據量。其中,在計算機科學中,虛擬機是指可以像真實機器一樣運行程序的計算機的軟件實現。虛擬機雙機熱備技術,也叫虛擬機FT(FaultTolerance,容錯)技術,存在主虛擬機和備虛擬機,主虛擬機和備虛擬機運行在兩臺不同的計算機中。其中,備虛擬機為輔助虛擬機,主虛擬機接收和發(fā)送網絡數據包,設備中的Hypervisor(管理程序)對主虛擬機和備虛擬機進行管理,Hypervisor定時產生主虛擬機的Checkpoint(檢查點),并將該Checkpoint以異步方式傳送至備虛擬機,以便于備虛擬機將主虛擬機的數據進行熱備份來保持虛擬同步,防止主虛擬機出現故障時,備虛擬機將在無中斷的情況下從主虛擬機接管并運行應用程序。具體的,現有技術中,受保護的主虛擬機在執(zhí)行業(yè)務客戶程序時,在主虛擬機定時掛起狀態(tài)時,Hypervisor執(zhí)行生成主虛擬機的 Checkpoint,該Checkpoint可以包括主虛擬機CPU(CentralProcessingUnit,處理器)狀態(tài)、內存信息和外設狀態(tài),并將Checkpoint寫入緩沖區(qū),在主虛擬機以Speculative(預測)方式執(zhí)行時,Hypervisor將該Checkpoint傳送至備虛擬機,而后控制主虛擬機進入正常執(zhí)行狀態(tài),如圖3所示為使用Primary-Backup(主備用)方案實現虛擬機雙機熱備功能框圖,如圖4所示,為Primary-Backup現有技術中數據熱備份時序框圖,包括主虛擬機與備虛擬機在數據備份時不同階段的狀態(tài),和主虛擬機上的客戶程序的執(zhí)行狀態(tài)。示例性的,假設主虛擬機在運行KernelCompile(內核編譯)業(yè)務時,在正常執(zhí)行過程中,會產生臟數據,其中,臟數據是指主虛擬機最新更新的數據,包括新更改的數據或新增加的數據等。202、設備將臟數據量與第一閾值和第二閾值進行比較,當臟數據量小于第一閾值時,進入步驟203,當臟數據量大于或等于第二閾值時,進入步驟204,當臟數據量大于或等于第一閾值,且小于第二閾值時,進入步驟206。具體的,對于主備虛擬機的管理可以由Hypervisor進行管理控制,也叫超級監(jiān)督者。Hypervisor可以監(jiān)控每個區(qū)間主虛擬機臟數據EDD(EpochDirtyData)的生成總量,并將臟數據量與第一閾值LT和第二閾值HT進行比較。其中,第二閾值大于第一閾值,第三閾值大于第二閾值。203、若臟數據量小于第一閾值,則設備暫緩生成主虛擬機的檢查點,直至累積的臟數據量大于或等于第一閾值且小于第二閾值,生成主虛擬機的檢查點,而后,進入步驟208。示例性的,當主虛擬機在正常執(zhí)行過程中產生的臟數據量EDD小于第一閾值時,Hypervisor管理程序可以暫緩生成主虛擬機的Checkpoint,跳過掛起虛擬機和本地拷貝,即跳過生成Checkpoint操作,延長正常執(zhí)行狀態(tài),直到主虛擬機在正常執(zhí)行狀態(tài)累積的臟數據量大于或等于第一閾值且小于第二閾值時,執(zhí)行掛起虛擬機,Hypervisor管理程序生成虛擬機的Checkpoint,而后控制主虛擬機進入Speculative執(zhí)行和正常執(zhí)行狀態(tài),并將包括臟數據在內的Checkpoint傳送至備虛擬機,以避免主虛擬機在Speculative執(zhí)行中向 備虛擬機多次傳輸信息量較少的Checkpoint,給客戶程序造成干擾。如圖5所示,現有技術中客戶程序的狀態(tài)如客戶程序時序圖①所示,本實施例中當主虛擬機產生的臟數據量低于第一閾值的處理時序圖,與客戶程序①對比,如客戶程序時序圖②所示,能有效降低主虛擬機備份時虛擬機對用戶業(yè)務的影響??蛇x的,Hypervisor管理程序在主虛擬機為掛起狀態(tài)生成主虛擬機的Checkpoint之前,在掛起狀態(tài)的前一次正常執(zhí)行過程中,將主虛擬機中的Coldpages(冷頁面數據)預先拷貝到第一緩沖區(qū),并將主虛擬機中的Hotpages(熱頁面數據)預先存儲到第二緩沖區(qū),在生成Checkpoint時,將主虛擬機的第二緩沖區(qū)中的Hotpages和第一緩沖區(qū)Coldpages拷貝到Checkpoint中,以減少虛擬機掛起時間,如圖6所示的客戶程序的時序圖④與正常備份狀態(tài)時序圖①進行對比。其中,Coldpages可以為已經被修改且修改之后不太可能再被修改的頁,Hotpages可以為修改頻率較高的頁;可選的,在內存中配置第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據);可選的,在內存中配置緩沖區(qū),該緩沖區(qū)包含兩個子區(qū):第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據)。204、若臟數據量大于或等于第二閾值,則設備暫緩生成主虛擬機的檢查點,直至累積的臟數據量達到第三閾值,生成檢查點并暫停主虛擬機,第三閾值大于所述第二閾值。示例性的,當主虛擬機在正常執(zhí)行過程中產生的臟數據量EDD大于第二閾值時,Hypervisor管理程序可以暫緩生成主虛擬機的檢查點,即跳過主虛擬機的掛起操作和本地拷貝操作,延長正常執(zhí)行狀態(tài),直到主虛擬機在正常執(zhí)行過程中累積的臟數據量到達第三閾值時,暫停主虛擬機,其中,該第三閾值大于第二閾值。如圖7所示,現有客戶程序的正常狀態(tài)如客戶程序時序圖①所示,本實施例中當主虛擬機產生的臟數據量高于第三閾值的處理時序 圖,與客戶程序①對比如客戶程序時序圖③所示,能夠有效降低主虛擬機備份時主虛擬機對用戶業(yè)務的影響。205、設備將檢查點通過冷遷移方式傳送到備虛擬機,而后進入步驟209。示例性的,Hypervisor管理程序控制暫停虛擬機后,將主虛擬機的檢查點執(zhí)行一次冷遷移,該數據包括主虛擬機的CPU狀態(tài)、內存信息以及外設狀態(tài),同時將累積的臟數據包括在Checkpoint中傳送至備虛擬機,以避免多次生成大量臟數據的Checkpoint造成主虛擬機的長時間掛起,導致客戶程序無法運行,而后恢復主虛擬機進入Speculative執(zhí)行狀態(tài),再進入正常執(zhí)行狀態(tài)。206、若臟數據量大于或等于第一閾值,且小于第二閾值,則設備生成主虛擬機的檢查點,而后進入步驟207。示例性的,若主虛擬機正常執(zhí)行狀態(tài)產生的臟數據量大于或等于第一閾值LT,且小于第二閾值HT,則Hypervisor管理程序控制虛擬機進行數據熱備份,即主虛擬機執(zhí)行掛起虛擬機、Speculative執(zhí)行和正常執(zhí)行狀態(tài),即執(zhí)行程序時序圖如圖5所示程序時序圖①所示。207、若臟數據量大于或等于第一閾值且小于第二閾值,則設備控制有限狀態(tài)機的狀態(tài)為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對檢查點進行數據熱備份。其中,FSM(FiniteStateMachine,有限狀態(tài)機),是指在數字電路系統中,一種十分重要的時序邏輯電路模塊,指輸出取決于過去輸入部分和當前輸入部分的時序邏輯電路。有限狀態(tài)機又稱有限狀態(tài)自動機或簡稱狀態(tài)機,表示有限個狀態(tài)以及這些狀態(tài)間轉移動作等行數學模型。有限狀態(tài)機還含有一組具有“記憶”功能的寄存器,這些寄存器的功能是記憶有限狀態(tài)機的內部狀態(tài),它們常被稱為狀態(tài)寄存器。在有限狀態(tài)機中,狀態(tài)寄存器的下一個狀態(tài)不僅與輸入信號有關,而且還與該寄存器的當前狀態(tài)有關。有限狀態(tài)機在FT容錯系統中,可以記錄FT系統的狀態(tài),追蹤FT系統狀態(tài)變化,利用觸發(fā)條件控制FT系統狀態(tài)進行轉移。Hypervisor管理程序可以從主虛擬機獲取主虛擬機在每個區(qū)間 所產生的臟數據總量。若臟數據量EDD大于或等于第一閾值LT且小于第二閾值HT時,若當前輸入部分,臟數據量LT≤EDD<HT,則有限狀態(tài)機的狀態(tài)為SN(初始態(tài)),Hypervisor管理程序在生成主虛擬機的檢查點時進行數據熱備份,即執(zhí)行過程如客戶程序時序圖①。208、若臟數據量小于第一閾值,則設備控制有限狀態(tài)機的狀態(tài)為低臟數據態(tài),進而在有限狀態(tài)機為低臟數據態(tài)時延長正常執(zhí)行狀態(tài),從而延遲主虛擬機進入掛起狀態(tài)。示例性的,當有限狀態(tài)機得到當前輸入量,主虛擬機的臟數據量小于第一閾值,即EDD<LT,則有限狀態(tài)機的狀態(tài)為狀態(tài)SL(低臟數據態(tài)),即主虛擬機的臟數據量小于第一閾值時,Hypervisor暫緩生成主虛擬機的Checkpoint,延長主虛擬機的正常執(zhí)行狀態(tài),從而延遲主虛擬機進入數據熱備份,即執(zhí)行客戶程序如時序圖②所示。209、若臟數據量大于或等于第二閾值,則設備控制有限狀態(tài)機的狀態(tài)為高臟數據態(tài),進而當有限狀態(tài)機的狀態(tài)處于高臟數據態(tài)時,若臟數據量累積到第三閾值,則生成檢查點并暫停主虛擬機,將檢查點通過冷遷移方式傳送到備虛擬機,從而延遲主虛擬機進入掛起狀態(tài)。示例性的,當有限狀態(tài)機得到當前輸入,主虛擬機的臟數據量大于或等于第二閾值,即EDD≥HT時,有限狀態(tài)機的狀態(tài)為高臟數據態(tài),當臟數據量累積到第三閾值時,控制主虛擬機暫停,并通過冷遷移的方式將主虛擬機數據傳送至備虛擬機,從而延遲主虛擬機進入數據熱備份,即延遲進入掛起狀態(tài),避免造成虛擬機長時間掛起導致客戶程序無法運行。即執(zhí)行客戶程序時序圖③所示。可選的,若主虛擬機的臟數據量大于或等于第一閾值且小于第二閾值,使得有限狀態(tài)機的狀態(tài)為初始態(tài)時,若主虛擬機當前更新的數據即臟數據量小于第一閾值,則控制有限狀態(tài)機從初始態(tài)經過第一緩沖態(tài)轉移為低臟數據態(tài),進而在有限狀態(tài)機狀態(tài)為低臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份。其中,第一緩沖態(tài)TNL,為有限狀態(tài)機從初始態(tài)SN到低臟數據 臺SL的緩沖態(tài)。當有限狀態(tài)機從初始態(tài)SN轉移為低臟數據態(tài)SL時,即有限狀態(tài)機過去輸入為LT≤EDD<HT初始態(tài),當前輸入為EDD<LT第一緩沖態(tài),那么有限狀態(tài)機的下一個狀態(tài)為低臟數據態(tài)SL,從而使得主虛擬機延長正常執(zhí)行狀態(tài),即執(zhí)行臟數據量小于第一閾值LT時的過程,從而延遲主虛擬機進入掛起狀態(tài)進行數據熱備份??蛇x的,若主虛擬機的臟數據量大于或等于第一閾值且小于第二閾值,使得有限狀態(tài)機的狀態(tài)為初始態(tài)時,若主虛擬機當前更新的數據即臟數據量大于或等于第二閾值時,則控制有限狀態(tài)機從初始態(tài)經過第二緩沖態(tài)轉移為高臟數據態(tài),進而在有限狀態(tài)機為高臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份。其中,第二緩沖態(tài)TNH,為有限狀態(tài)機從初始態(tài)SN到高臟數據態(tài)SH的緩沖態(tài)。當有限狀態(tài)機從初始態(tài)SN轉移為高臟數據態(tài)SH時,即有限狀態(tài)機過去輸入為LT≤EDD<HT初始態(tài),當前輸入為EDD≥HT第二緩沖態(tài),那么有限狀態(tài)機的下一個狀態(tài)為高臟數據態(tài)SH,從而使得主虛擬機延長正常執(zhí)行狀態(tài),當臟數據量大于第三閾值時,暫停虛擬機,將主虛擬機累積的臟數據量通過冷遷移的方式傳送至備虛擬機,從而延遲主虛擬機進入掛起狀態(tài)進行數據熱備份。可選的,若主虛擬機的臟數據量大于或等于第二閾值,使得有限狀態(tài)機的狀態(tài)為高臟數據態(tài)時,若主虛擬機當前更新的數據即臟數據量小于第二閾值,則控制有限狀態(tài)機從高臟數據態(tài)經過第三緩沖態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。其中,第三緩沖態(tài)THN為有限狀態(tài)機從高臟數據態(tài)SH到初始態(tài)SN的緩沖態(tài)。當有限狀態(tài)機從高臟數據態(tài)SH轉移為初始態(tài)SN時,過去輸入為EDD≥HT,當前輸入為EDD<HT,那么有限狀態(tài)機的下一個狀態(tài)為初始態(tài)SN,從而控制虛擬機進行數據熱備份??蛇x的,若主虛擬機的臟數據量小于第一閾值,使得有限狀態(tài)機的狀態(tài)為低臟數據態(tài)時,若主虛擬機當前更新的數據即臟數據量大于或等于第一閾值時,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀 態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。具體的,當有限狀態(tài)機過去輸入為低臟數據態(tài)EDD<LT,當前輸入為EDD≥LT時,那么有限狀態(tài)機的下一個狀態(tài)為初始態(tài)SN,從而使得主虛擬機進行數據熱備份??蛇x的,若主虛擬機的臟數據量小于第一閾值使得有限狀態(tài)機的狀態(tài)為第一緩沖態(tài)時,若主虛擬機當前更新的數據即臟數據量大于或等于第一閾值,則控制有限狀態(tài)機的狀態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。具體的,當有限狀態(tài)機過去的狀態(tài)為第一緩沖態(tài)TNL,即過去輸入為EDD<LT,當前的輸入為EDD≥LT時,則控制有限狀態(tài)機的狀態(tài)轉移為初始態(tài)SN,以便于控制虛擬機進行數據熱備份??蛇x的,若主虛擬機的臟數據量大于或等于第二閾值使得有限狀態(tài)機的狀態(tài)為第二緩沖態(tài)時,若主虛擬機當前更新的數據即臟數據量小于第二閾值,則控制有限狀態(tài)機的狀態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。具體的,當有限狀態(tài)機過去狀態(tài)為第二緩沖態(tài)TNH,即過去輸入為EDD≥HT,當前輸入為EDD<HT時,有限狀態(tài)機的下一個狀態(tài)為初始態(tài)SN,從而控制虛擬機進行數據熱備份??蛇x的,若主虛擬機的臟數據量小于第二閾值使得有限狀態(tài)機的狀態(tài)為第三緩沖態(tài)時,若主虛擬機當前更新的數據即臟數據量大于或等于第二閾值,則控制有限狀態(tài)機的狀態(tài)轉移為高臟數據態(tài),進而在有限狀態(tài)機為高臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份。具體的,有限狀態(tài)機過去狀態(tài)為第三緩沖態(tài)THN,即過去輸入為EDD<HT,當前輸入為EDD≥HT,那么有限狀態(tài)機的下一個狀態(tài)為高臟數據態(tài)SH,從而使得有限狀態(tài)機控制主虛擬機延長正常執(zhí)行狀態(tài),當臟數據量達到第三閾值時,暫停虛擬機,通過冷遷移方式將主虛擬機臟數據量傳送到備虛擬機,從而延遲主虛擬機進入掛起狀態(tài)進行數據熱備份,提高了虛擬機業(yè)務的高可用性和高性能。可選的,當有限狀態(tài)機的狀態(tài)為低臟數據態(tài)時,若有限狀態(tài)機處 于低臟數據態(tài)的時間到達預設周期,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時進行數據熱備份。具體的,當有限狀態(tài)機的狀態(tài)為低臟數據狀態(tài)SL時,即主虛擬機處于正常執(zhí)行狀態(tài),若處于該正常執(zhí)行狀態(tài)的間隔時間到達Epoch(時間閾值),長時間內將主虛擬機的數據沒有備份到備虛擬機中,有限狀態(tài)機的狀態(tài)轉移為初始態(tài),從而使得主虛擬機進入掛起狀態(tài)進行數據熱備份??蛇x的,當有限狀態(tài)機的狀態(tài)為高臟數據態(tài)時,若有限狀態(tài)機處于高臟數據態(tài)的時間到達預設周期,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。具體的,當有限狀態(tài)機的狀態(tài)為高臟數據狀態(tài)SH時,即主虛擬機處于暫停狀態(tài),若處于暫停狀態(tài)的間隔時間到達Epoch(時間閾值),長時間內將主虛擬機的數據沒有備份到備虛擬機中,有限狀態(tài)機的狀態(tài)轉移為初始態(tài),從而使得主虛擬機進入掛起狀態(tài)進行數據熱備份。通過上述說明,有限狀態(tài)機存在6個有限狀態(tài),該6個狀態(tài)的轉移與主虛擬機的臟數據量或預設周期的關系圖如圖8所示,使得管理程序根據有限狀態(tài)機的狀態(tài)對主虛擬機的檢查點進行數據熱備份。本發(fā)明實施例提供一種虛擬機熱備份方法,通過獲取主虛擬機當前業(yè)務產生的臟數據量,將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,并根據臟數據量或有限狀態(tài)機的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機的狀態(tài),將生成的主虛擬機的檢查點進行數據熱備份,能夠有效降低虛擬機備份時對用戶業(yè)務的影響,提升了虛擬機業(yè)務的可用性。本發(fā)明又一實施例提供一種設備01,如圖9所示,包括:獲取單元011,用于獲取主虛擬機當前業(yè)務產生的臟數據量。第一處理單元012,用于將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,第二閾值大于第一閾值??蛇x的,如圖10所示,在獲取所述主虛擬機當前業(yè)務產生的臟數據量后,還可以包括:第二處理單元013,用于根據臟數據量或有限狀態(tài)機狀態(tài)中的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機的狀態(tài),將生成的主虛擬機的檢查點進行與有限狀態(tài)機對應的數據熱備份;其中,有限狀態(tài)機的狀態(tài)用于表示主虛擬機進行數據熱備份時產生的臟數據量的狀態(tài)??蛇x的,第一處理單元012還可以用于:在生成主虛擬機的檢查點的前一次正常執(zhí)行狀態(tài)中,將主虛擬機的冷頁面數據預先拷貝到第一緩沖區(qū),并將所述主虛擬機的熱頁面數據預先存儲到第二緩沖區(qū);可選的,在內存中配置第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據);可選的,在內存中配置緩沖區(qū),該緩沖區(qū)包含兩個子區(qū):第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據);將第一緩沖區(qū)中主虛擬機的冷頁面數據拷貝到檢查點中,并將第二緩沖區(qū)中主虛擬機的熱頁面數據拷貝到檢查點中。進一步的,第一處理單元012還可以具體用于:若臟數據量小于第一閾值,則暫緩生成主虛擬機的檢查點,直至累積的臟數據量大于或等于第一閾值且小于第二閾值,生成主虛擬機的檢查點;若臟數據量大于或等于第二閾值,則暫緩生成主虛擬機的檢查點,直至累積的臟數據量達到第三閾值,生成所述檢查點并暫停主虛擬機,將檢查點通過冷遷移方式傳送到備虛擬機,第三閾值大于第二閾值;若臟數據量大于或等于第一閾值,且小于第二閾值,則生成主虛擬機的檢查點。再進一步的,第二處理單元013可以用于:若臟數據量大于或等于第一閾值且小于第二閾值,則控制有限狀 態(tài)機的狀態(tài)為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對檢查點進行數據熱備份;若臟數據量小于第一閾值,則控制有限狀態(tài)機的狀態(tài)為低臟數據態(tài),進而在有限狀態(tài)機為低臟數據態(tài)時延長正常執(zhí)行狀態(tài),從而延遲主虛擬機進入掛起狀態(tài);若臟數據量大于或等于第二閾值,則控制有限狀態(tài)機的狀態(tài)為高臟數據態(tài),進而當有限狀態(tài)機的狀態(tài)處于高臟數據態(tài)時,若臟數據量累積到第三閾值,則生成檢查點并暫停主虛擬機,將檢查點通過冷遷移方式傳送到備虛擬機,從而延遲主虛擬機進入掛起狀態(tài)。進一步的,第二處理單元013還可以用于:當有限狀態(tài)機的狀態(tài)為初始態(tài)時,若臟數據量小于第一閾值,則控制有限狀態(tài)機從初始態(tài)經過第一緩沖態(tài)轉移為低臟數據態(tài),進而在有限狀態(tài)機狀態(tài)為低臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為初始態(tài)時,若臟數據量大于或等于第二閾值時,則控制有限狀態(tài)機從初始態(tài)經過第二緩沖態(tài)轉移為高臟數據態(tài),進而在有限狀態(tài)機為高臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為高臟數據態(tài)時,若臟數據量小于第二閾值,則控制有限狀態(tài)機從高臟數據態(tài)經過第三緩沖態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為低臟數據態(tài)時,若臟數據量大于或等于第一閾值時,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對控制主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為第一緩沖態(tài)時,若臟數據量大于或等于第一閾值,則控制有限狀態(tài)機的狀態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為第二緩沖態(tài)時,若臟數據量小于第二閾值,則控制有限狀態(tài)機的狀態(tài)轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為第三緩沖態(tài)時,若臟數據量大于或等于第二閾值,則控制有限狀態(tài)機的狀態(tài)轉移為高臟數據態(tài),進而在有限狀態(tài)機為高臟數據態(tài)時控制主虛擬機延長正常執(zhí)行狀態(tài),從而延遲進入掛起狀態(tài),以使得主虛擬機進行數據熱備份;其中,第一緩沖態(tài)為有限狀態(tài)機從初始態(tài)轉移為低臟數據態(tài)的緩沖態(tài),第二緩沖態(tài)為有限狀態(tài)機從初始態(tài)轉移為高臟數據態(tài)的緩沖態(tài),第三緩沖態(tài)為有限狀態(tài)機從高臟數據態(tài)轉移為初始態(tài)的緩沖態(tài)??蛇x的,第二處理單元013還可以用于:當有限狀態(tài)機的狀態(tài)為低臟數據態(tài)時,若有限狀態(tài)機處于低臟數據態(tài)的時間到達預設周期,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份;當有限狀態(tài)機的狀態(tài)為高臟數據態(tài)時,若有限狀態(tài)機處于高臟數據態(tài)的時間到達預設周期,則控制有限狀態(tài)機轉移為初始態(tài),進而在有限狀態(tài)機為初始態(tài)時對主虛擬機進行數據熱備份。本發(fā)明實施例提供一種設備,通過獲取主虛擬機當前業(yè)務產生的臟數據量,將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,并根據臟數據量或有限狀態(tài)機的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機的狀態(tài),將生成主虛擬機的檢查點進行數據熱備份,能夠有效降低虛擬機備份時對用戶業(yè)務的影響,提升了虛擬機業(yè)務的可用性。本發(fā)明又一實施例提供一種設備02,如圖11所示,包括:處理器(Processor)021,通信接口(CommunicationsInterface)022,存儲器(Memory)023,通信總線024。處理器021,通信接口022,存儲器023通過通信總線024完成相互間的通信。通信接口022,用于與網元通信。處理器021,用于執(zhí)行程序025,具體可以執(zhí)行上述圖1或圖2所示的方法實施例中的相關步驟。具體地,程序025可以包括程序代碼,程序代碼包括計算機操作 指令。處理器021可能是一個中央處理器CPU(CentralProcessingUnit),或者是特定集成電路ASIC(ApplicationSpecificIntegratedCircuit),或者是被配置成實施本發(fā)明實施例的一個或多個集成電路。存儲器023用于存放程序025,存儲器023可能包含高速RAM(RandomAccessMemory)存儲器,也可能還包括非易失性存儲器(Non-volatileMemory),例如至少一個磁盤存儲器。程序025具體可以包括:獲取單元,用于獲取主虛擬機當前業(yè)務產生的臟數據量;第一處理單元,用于將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,第二閾值大于第一閾值。進一步的,還可以包括:第二處理單元,用于根據臟數據量或有限狀態(tài)機狀態(tài)中的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機的狀態(tài),將生成的主虛擬機的檢查點進行與有限狀態(tài)機對應的數據熱備份;其中,有限狀態(tài)機的狀態(tài)用于表示主虛擬機進行數據熱備份時產生的臟數據量的狀態(tài)。可選的,還可以包括:在生成主虛擬機的檢查點的前一次正常執(zhí)行狀態(tài)中,將主虛擬機的冷頁面數據預先拷貝到第一緩沖區(qū),并將所述主虛擬機的熱頁面數據預先存儲到第二緩沖區(qū);可選的,在內存中配置第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據);可選的,在內存中配置緩沖區(qū),該緩沖區(qū)包含兩個子區(qū):第一緩沖區(qū)、第二緩沖區(qū),其中,第一緩沖區(qū)用于存儲Coldpages(冷頁面數據),第二緩沖區(qū)用于存儲Hotpages(熱頁面數據);將第一緩沖區(qū)中主虛擬機的冷頁面數據拷貝到檢查點中,并將第二緩沖區(qū)中主虛擬機的熱頁面數據拷貝到檢查點中。程序025中各模塊的具體實現可以參見圖3或圖4所示實施例中的相應模塊,在此不贅述。本發(fā)明實施例提供一種設備,通過獲取主虛擬機當前業(yè)務產生的臟數據量,將臟數據量與第一閾值和第二閾值進行比較,根據比較結果生成主虛擬機的檢查點,并根據臟數據量或有限狀態(tài)機的預設周期更新有限狀態(tài)機的狀態(tài),以便于根據有限狀態(tài)機的狀態(tài),將生成的主虛擬機的檢查點進行數據熱備份,能夠有效降低虛擬機備份時對用戶業(yè)務的影響,提升了虛擬機業(yè)務的可用性。在本申請所提供的幾個實施例中,應該理解到,所揭露的設備和方法,可以通過其它的方式實現。例如,以上所描述的設備實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。另外,在本發(fā)明各個實施例中的設備和系統中,各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理包括,也可以兩個或兩個以上單元集成在一個單元中。且上述的各單元既可以采用硬件的形式實現,也可以采用硬件加軟件功能單元的形式實現。實現上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀取存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ReadOnlyMemory,簡稱ROM)、隨機存取存儲器(RandomAccessMemory,簡稱RAM)、磁碟或者光盤等各種可以存儲程序代碼的介質。以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應以所述權利要求的保護范圍為準。
當前第1頁1 2 3 
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
安丘市| 连州市| 焦作市| 天台县| 大庆市| 于田县| 客服| 莱州市| 剑川县| 邻水| 通许县| 白城市| 米脂县| 巴林左旗| 花莲县| 洮南市| 方正县| 开封市| 明溪县| 甘南县| 长白| 宽甸| 深圳市| 兴业县| 遂平县| 永修县| 彭山县| 泽州县| 凭祥市| 河曲县| 连平县| 旬阳县| 鄂尔多斯市| 怀宁县| 甘洛县| 西林县| 天水市| 峨眉山市| 商河县| 乐山市| 鄂温|