本發(fā)明涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,具體而言,涉及一種nas(networkattachedstorage,網(wǎng)絡(luò)附屬存儲)設(shè)備、分布式處理系統(tǒng)和方法。
背景技術(shù):
目前,nas是一種采用直接與網(wǎng)絡(luò)介質(zhì)相連的特殊設(shè)備實(shí)現(xiàn)數(shù)據(jù)存儲的機(jī)制。這些設(shè)備都分配有ip地址,并且具有如下優(yōu)勢:
第一,nas適用于那些需要通過網(wǎng)絡(luò)將數(shù)據(jù)傳送到多臺客戶機(jī)上的用戶,因此nas設(shè)備在數(shù)據(jù)在長距離傳送的環(huán)境中可以很好地發(fā)揮作用。
第二,nas設(shè)備易于部署,可以使nas主機(jī)、客戶機(jī)和其他設(shè)備廣泛分布在整個(gè)企業(yè)的網(wǎng)絡(luò)環(huán)境中,且nas設(shè)備可以提供可靠的文件級數(shù)據(jù)整合,因?yàn)槲募i定是由設(shè)備自身來處理的。
第三,nas應(yīng)用于高效的文件共享任務(wù)中,例如unix中的nfs(networkfilesystem,網(wǎng)絡(luò)文件系統(tǒng))和windowsnt中的cifs(commoninternetfilesystem,通用internet文件系統(tǒng)),其中基于網(wǎng)絡(luò)的文件級鎖定提供了高級并發(fā)訪問保護(hù)的功能。
而且nas能夠滿足那些希望降低存儲成本但又無法承受存儲網(wǎng)絡(luò)(san:storageareanetwork)昂貴價(jià)格的中小企業(yè)的需求,具有相當(dāng)好的性能價(jià)格比。
相關(guān)技術(shù)中,nas包括路由器以及分別與路由器連接的多個(gè)存儲服務(wù)器,多個(gè)存儲服務(wù)器中的每個(gè)服務(wù)器均設(shè)置有用于存儲數(shù)據(jù)的磁盤。
在實(shí)現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:
無法識別安裝在nas內(nèi)的磁盤所出現(xiàn)的問題。
技術(shù)實(shí)現(xiàn)要素:
有鑒于此,本發(fā)明實(shí)施例的目的在于提供一種nas設(shè)備、分布式處理系統(tǒng)和方法,以實(shí)時(shí)識別安裝在nas內(nèi)的磁盤所出現(xiàn)的問題。
第一方面,本發(fā)明實(shí)施例提供了一種nas設(shè)備,包括:路由器和與所述路由器連接的多個(gè)存儲模塊;
多個(gè)所述存儲模塊中的每個(gè)存儲模塊均設(shè)置有微控制器、無線通信裝置和磁盤;所述無線通信裝置和所述磁盤分別與所述微控制器連接;
所述微控制器,用于在磁盤讀寫數(shù)據(jù)過程中對所述磁盤進(jìn)行故障檢測,并在檢測到所述磁盤出現(xiàn)故障時(shí)發(fā)出磁盤故障指令;
所述無線通信裝置,用于傳輸所述磁盤的讀寫數(shù)據(jù)和磁盤故障指令。
結(jié)合第一方面,本發(fā)明實(shí)施例提供了第一方面的第一種可能的實(shí)施方式,其中:所述微控制器用于在磁盤讀寫數(shù)據(jù)過程中對所述磁盤進(jìn)行故障檢測,并在檢測到所述磁盤出現(xiàn)故障時(shí)發(fā)出磁盤故障指令,包括:
當(dāng)所述磁盤讀寫失敗時(shí),所述微控制器生成所述磁盤的讀寫失敗次數(shù)增量數(shù)據(jù);
所述微控制器獲取預(yù)存的讀寫失敗次數(shù)存量數(shù)據(jù);
所述微控制器得到所述讀寫失敗次數(shù)增量數(shù)據(jù)與讀寫失敗次數(shù)存量數(shù)據(jù)相加的計(jì)算結(jié)果,并將得到的所述計(jì)算結(jié)果與預(yù)設(shè)的讀寫次數(shù)失敗閾值進(jìn)行對比;
當(dāng)所述計(jì)算結(jié)果與所述讀寫次數(shù)失敗閾值相等時(shí),所述微控制器確定所述磁盤出現(xiàn)故障,并發(fā)出磁盤故障指令;
當(dāng)所述計(jì)算結(jié)果小于所述讀寫次數(shù)失敗閾值時(shí),所述微控制器將所述計(jì)算結(jié)果作為讀寫失敗次數(shù)存量數(shù)據(jù)并進(jìn)行存儲。
第二方面,本發(fā)明實(shí)施例提供了一種分布式處理系統(tǒng),包括:上述的nas設(shè)備、中心服務(wù)器和多個(gè)節(jié)點(diǎn)服務(wù)器;
其中,所述中心服務(wù)器中設(shè)置有針對不同任務(wù)類型的計(jì)算單元中心端,每個(gè)所述節(jié)點(diǎn)服務(wù)器分別設(shè)置有與所述計(jì)算單元中心端對應(yīng)的計(jì)算單元節(jié)點(diǎn)端,所述計(jì)算單元中心端和對應(yīng)的所述計(jì)算單元節(jié)點(diǎn)端組成一個(gè)計(jì)算單元;
所述中心服務(wù)器用于接收用戶發(fā)送的視頻圖像任務(wù),根據(jù)所述視頻圖像任務(wù)的類型,以及所述多個(gè)節(jié)點(diǎn)服務(wù)器當(dāng)前的任務(wù)數(shù)量和負(fù)載情況,將所述視頻圖像任務(wù)通過計(jì)算單元中心端分配給對應(yīng)的節(jié)點(diǎn)服務(wù)器;
所述節(jié)點(diǎn)服務(wù)器用于通過所述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端對所述視頻圖像任務(wù)進(jìn)行處理,得到處理結(jié)果;
所述nas設(shè)備,用于對所述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行存儲和備份。
結(jié)合第二方面,本發(fā)明實(shí)施例提供了第二方面的第一種可能的實(shí)施方式,其中:所述中心服務(wù)器包括:
任務(wù)數(shù)量確定模塊,用于根據(jù)當(dāng)前服務(wù)器集群中各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量,確定已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器;第一選擇模塊,用于選擇任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器作為所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器;第二選擇模塊,用于當(dāng)有多個(gè)節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量均最少時(shí),選擇所述多個(gè)節(jié)點(diǎn)服務(wù)器中資源利用率最低的節(jié)點(diǎn)服務(wù)器作為所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器,所述資源利用率包括以下至少一種服務(wù)器硬件資源的利用率:中央處理器、內(nèi)存和網(wǎng)絡(luò)帶寬;
任務(wù)添加模塊,用于查找所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表,在所述任務(wù)列表的已分配任務(wù)數(shù)量中添加所述視頻圖像任務(wù);任務(wù)刪除模塊,用于當(dāng)接收到所述計(jì)算單元節(jié)點(diǎn)端發(fā)送的所述視頻圖像任務(wù)已完成的信息時(shí),將所述任務(wù)列表的已分配任務(wù)數(shù)量中所述視頻圖像任務(wù)刪除;
指令獲取模塊,用于獲取計(jì)算單元添加指令,所述計(jì)算單元添加指令攜帶有計(jì)算單元數(shù)據(jù)包;中心端設(shè)置模塊,用于根據(jù)所述計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端,并為設(shè)置的所述計(jì)算單元中心端分配端口;發(fā)送模塊,用于將所述計(jì)算單元數(shù)據(jù)包和分配給所述計(jì)算單元中心端的端口的端口號發(fā)送給所述多個(gè)節(jié)點(diǎn)服務(wù)器;
刪除指令獲取模塊,用于獲取計(jì)算單元?jiǎng)h除指令,所述計(jì)算單元?jiǎng)h除指令中攜帶有計(jì)算單元的標(biāo)識;計(jì)算單元中心端卸載模塊,用于根據(jù)所述計(jì)算單元?jiǎng)h除指令中攜帶的計(jì)算單元的標(biāo)識,卸載計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元中心端;刪除指令下發(fā)模塊,用于向所述多個(gè)節(jié)點(diǎn)服務(wù)器發(fā)送所述計(jì)算單元?jiǎng)h除指令;
所述節(jié)點(diǎn)服務(wù)器包括:信息上報(bào)模塊,用于周期性向所述中心服務(wù)器反饋當(dāng)前的資源利用率;
任務(wù)反饋模塊,用于當(dāng)所述視頻圖像任務(wù)完成時(shí),通過所述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端向所述中心服務(wù)器發(fā)送任務(wù)已完成的信息,所述任務(wù)已完成的信息攜帶有對應(yīng)的計(jì)算單元所在節(jié)點(diǎn)服務(wù)器的標(biāo)識;
節(jié)點(diǎn)端設(shè)置模塊,用于接收到所述計(jì)算單元數(shù)據(jù)包后,設(shè)置對應(yīng)的計(jì)算單元節(jié)點(diǎn)端;連接建立模塊,用于通過所述端口號對應(yīng)的端口為設(shè)置的所述計(jì)算單元節(jié)點(diǎn)端與所述計(jì)算單元中心端建立連接;
計(jì)算單元節(jié)點(diǎn)端卸載模塊,用于當(dāng)接收到所述計(jì)算單元?jiǎng)h除指令時(shí),根據(jù)所述計(jì)算單元?jiǎng)h除命令中的計(jì)算單元的標(biāo)識,卸載所述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元節(jié)點(diǎn)端。
結(jié)合第二方面,本發(fā)明實(shí)施例提供了第二方面的第二種可能的實(shí)施方式,其中:所述中心服務(wù)器包括:通用任務(wù)接口,通過所述通用任務(wù)接口,獲取用戶發(fā)送的具有不同任務(wù)類型的所述視頻圖像任務(wù)。
結(jié)合第二方面,本發(fā)明實(shí)施例提供了第二方面的第三種可能的實(shí)施方式,其中:所述nas設(shè)備,用于對所述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行備份,包括:
屬性獲取模塊,用于使用linux系統(tǒng)中的llistxattr命令,獲取待備份的數(shù)據(jù)的nas相關(guān)的擴(kuò)展屬性;數(shù)據(jù)打包模塊,用于將所述數(shù)據(jù)打包為帶有所述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包;數(shù)據(jù)備份模塊,用于將所述文件包備份到磁盤上;
其中,所述帶有所述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包包括:用于存放所述數(shù)據(jù)的讀寫權(quán)限的字段、用于存放所述數(shù)據(jù)的名稱的字段、用于存放所述數(shù)據(jù)的頭信息的字段、用于存放所述數(shù)據(jù)的內(nèi)容的字段、與用于存放所述nas相關(guān)的擴(kuò)展屬性的字段;
所述用于存放所述nas相關(guān)的擴(kuò)展屬性的字段包括:用于存放所述nas相關(guān)的擴(kuò)展屬性的名稱的子字段、用于存放所述nas相關(guān)的擴(kuò)展屬性的名稱的長度的子字段、用于存放所述nas相關(guān)的擴(kuò)展屬性的值的子字段、與用于存放所述nas相關(guān)的擴(kuò)展屬性的長度的子字段。
第三方面,本發(fā)明實(shí)施例提供了一種應(yīng)用上述的分布式處理系統(tǒng)實(shí)現(xiàn)的分布式處理方法,所述分布式處理系統(tǒng)包括:nas設(shè)備、中心服務(wù)器和多個(gè)節(jié)點(diǎn)服務(wù)器;所述方法包括:
所述中心服務(wù)器接收用戶發(fā)送的視頻圖像任務(wù);
所述中心服務(wù)器根據(jù)當(dāng)前服務(wù)器集群中各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量,確定已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器;
所述中心服務(wù)器選擇任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器作為所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器;
當(dāng)有多個(gè)節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量均最少時(shí),所述中心服務(wù)器選擇所述多個(gè)節(jié)點(diǎn)服務(wù)器中資源利用率最低的節(jié)點(diǎn)服務(wù)器作為所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器,所述資源利用率包括以下至少一種服務(wù)器硬件資源的利用率:中央處理器、內(nèi)存和網(wǎng)絡(luò)帶寬;其中,所述節(jié)點(diǎn)服務(wù)器周期性向所述中心服務(wù)器反饋當(dāng)前的資源利用率;
所述節(jié)點(diǎn)服務(wù)器接收到所述視頻圖像任務(wù)后,通過所述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端對所述視頻圖像任務(wù)進(jìn)行處理,得到處理結(jié)果;
nas設(shè)備對所述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行存儲和備份;
當(dāng)nas設(shè)備對所述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行備份時(shí),nas設(shè)備具體用于:
使用linux系統(tǒng)中的llistxattr命令,獲取待備份的數(shù)據(jù)的nas相關(guān)的擴(kuò)展屬性;
將所述數(shù)據(jù)打包為帶有所述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包;
將所述文件包備份到磁盤上;
其中,所述帶有所述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包包括:用于存放所述數(shù)據(jù)的讀寫權(quán)限的字段、用于存放所述數(shù)據(jù)的名稱的字段、用于存放所述數(shù)據(jù)的頭信息的字段、用于存放所述數(shù)據(jù)的內(nèi)容的字段、與用于存放所述nas相關(guān)的擴(kuò)展屬性的字段;
所述用于存放所述nas相關(guān)的擴(kuò)展屬性的字段包括:用于存放所述nas相關(guān)的擴(kuò)展屬性的名稱的子字段、用于存放所述nas相關(guān)的擴(kuò)展屬性的名稱的長度的子字段、用于存放所述nas相關(guān)的擴(kuò)展屬性的值的子字段、與用于存放所述nas相關(guān)的擴(kuò)展屬性的長度的子字段。
結(jié)合第三方面,本發(fā)明實(shí)施例提供了第三方面的第一種可能的實(shí)施方式,其中:所述方法還包括:
所述中心服務(wù)器查找所述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表,在所述任務(wù)列表的已分配任務(wù)數(shù)量中添加所述視頻圖像任務(wù);
當(dāng)接收到所述計(jì)算單元節(jié)點(diǎn)端發(fā)送的所述視頻圖像任務(wù)已完成的信息時(shí),所述中心服務(wù)器將所述任務(wù)列表的已分配任務(wù)數(shù)量中所述視頻圖像任務(wù)刪除;
當(dāng)所述視頻圖像任務(wù)完成時(shí),所述節(jié)點(diǎn)服務(wù)器通過所述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端向所述中心服務(wù)器發(fā)送任務(wù)已完成的信息,所述任務(wù)已完成的信息攜帶有對應(yīng)的計(jì)算單元所在節(jié)點(diǎn)服務(wù)器的標(biāo)識。
結(jié)合第三方面,本發(fā)明實(shí)施例提供了第三方面的第二種可能的實(shí)施方式,其中:所述方法還包括:
所述中心服務(wù)器獲取計(jì)算單元添加指令,所述計(jì)算單元添加指令攜帶有計(jì)算單元數(shù)據(jù)包;
所述中心服務(wù)器根據(jù)所述計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端,并為設(shè)置的所述計(jì)算單元中心端分配端口;
所述中心服務(wù)器將所述計(jì)算單元數(shù)據(jù)包和分配給所述計(jì)算單元中心端的端口的端口號發(fā)送給所述多個(gè)節(jié)點(diǎn)服務(wù)器;
所述節(jié)點(diǎn)服務(wù)器接收到所述計(jì)算單元數(shù)據(jù)包后,設(shè)置對應(yīng)的計(jì)算單元節(jié)點(diǎn)端;
所述節(jié)點(diǎn)服務(wù)器通過所述端口號對應(yīng)的端口為設(shè)置的所述計(jì)算單元節(jié)點(diǎn)端與所述計(jì)算單元中心端建立連接。
結(jié)合第三方面,本發(fā)明實(shí)施例提供了第三方面的第三種可能的實(shí)施方式,其中:所述方法還包括:
所述中心服務(wù)器獲取計(jì)算單元?jiǎng)h除指令,所述計(jì)算單元?jiǎng)h除指令中攜帶有計(jì)算單元的標(biāo)識;
所述中心服務(wù)器根據(jù)所述計(jì)算單元?jiǎng)h除指令中攜帶的計(jì)算單元的標(biāo)識,卸載所述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元中心端;
所述中心服務(wù)器向所述多個(gè)節(jié)點(diǎn)服務(wù)器發(fā)送所述計(jì)算單元?jiǎng)h除指令;
當(dāng)接收到所述計(jì)算單元?jiǎng)h除指令時(shí),所述節(jié)點(diǎn)服務(wù)器根據(jù)所述計(jì)算單元?jiǎng)h除命令中的計(jì)算單元的標(biāo)識,卸載所述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元節(jié)點(diǎn)端;
本發(fā)明實(shí)施例提供的nas設(shè)備、分布式處理系統(tǒng)和方法,在nas設(shè)備中使存儲模塊直接與路由器連接,與相關(guān)技術(shù)中路由器與服務(wù)器連接相比,可以在存儲模塊出現(xiàn)問題時(shí)及時(shí)對存儲模塊的故障進(jìn)行識別,并進(jìn)行相應(yīng)的故障切換。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例的技術(shù)方案,下面將對實(shí)施例中所需要使用的附圖作簡單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實(shí)施例,因此不應(yīng)被看作是對范圍的限定,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。
圖1示出了本發(fā)明實(shí)施例1所提供的一種nas設(shè)備的結(jié)構(gòu)示意圖;
圖2示出了本發(fā)明實(shí)施例1所提供的分布式處理系統(tǒng)的結(jié)構(gòu)示意圖;
圖3示出了本發(fā)明實(shí)施例1所提供的分布式處理系統(tǒng)中,nas設(shè)備的微處理器的結(jié)構(gòu)示意圖;
圖4示出了本發(fā)明實(shí)施例1所提供的一種nas設(shè)備中,磁盤故障檢測的具體流程圖。
圖標(biāo):100-路由器;102-存儲模塊;1020-微控制器;1022-無線通信裝置;1024-磁盤;200-nas設(shè)備;210-中心服務(wù)器;220-節(jié)點(diǎn)服務(wù)器;212-計(jì)算單元中心端;222-計(jì)算單元節(jié)點(diǎn)端;300-屬性獲取模塊;302-數(shù)據(jù)打包模塊;304-數(shù)據(jù)備份模塊。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。通常在此處附圖中描述和示出的本發(fā)明實(shí)施例的組件可以以各種不同的配置來布置和設(shè)計(jì)。因此,以下對在附圖中提供的本發(fā)明的實(shí)施例的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實(shí)施例?;诒景l(fā)明的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
目前nas包括路由器以及分別與路由器連接的多個(gè)存儲服務(wù)器,多個(gè)存儲服務(wù)器中的每個(gè)服務(wù)器均設(shè)置有用于存儲數(shù)據(jù)的磁盤,無法識別安裝在nas內(nèi)的磁盤所出現(xiàn)的問題?;诖?,本申請?zhí)峁┑囊环Nnas設(shè)備、分布式處理系統(tǒng)和方法。
需要注意的是,在本發(fā)明的描述中,術(shù)語“中心”、“上”、“下”、“左”、“右”、“豎直”、“水平”、“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對本發(fā)明的限制。此外,術(shù)語“第一”、“第二”、“第三”僅用于描述目的,而不能理解為指示或暗示相對重要性。
另外,在本發(fā)明的描述中,除非另有明確的規(guī)定和限定,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個(gè)元件內(nèi)部的連通。對于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。
實(shí)施例
參見圖1所示的nas設(shè)備的結(jié)構(gòu)示意圖,本實(shí)施例提供一種nas設(shè)備,包括:路由器100和與上述路由器100連接的多個(gè)存儲模塊102;
多個(gè)上述存儲模塊102中的每個(gè)存儲模塊102均設(shè)置有微控制器1020、無線通信裝置1022和磁盤1024;上述無線通信裝置1022和上述磁盤1024分別與上述微控制器1020連接;
上述微控制器1020,用于在磁盤1024讀寫數(shù)據(jù)過程中對上述磁盤1024進(jìn)行故障檢測,并在檢測到上述磁盤1024出現(xiàn)故障時(shí)發(fā)出磁盤故障指令;
上述無線通信裝置1022,用于傳輸上述磁盤1024的讀寫數(shù)據(jù)和磁盤故障指令。
具體地,參見圖4所示的磁盤故障檢測流程,上述微控制器用于在磁盤讀寫數(shù)據(jù)過程中對上述磁盤進(jìn)行故障檢測,并在檢測到上述磁盤出現(xiàn)故障時(shí)發(fā)出磁盤故障指令,包括以下具體步驟:
步驟400、當(dāng)磁盤讀寫失敗時(shí),微控制器生成上述磁盤的讀寫失敗次數(shù)增量數(shù)據(jù);
步驟402、上述微控制器獲取預(yù)存的讀寫失敗次數(shù)存量數(shù)據(jù);
步驟404、上述微控制器得到上述讀寫失敗次數(shù)增量數(shù)據(jù)與讀寫失敗次數(shù)存量數(shù)據(jù)相加的計(jì)算結(jié)果,并將得到的上述計(jì)算結(jié)果與預(yù)設(shè)的讀寫次數(shù)失敗閾值進(jìn)行對比;
步驟406、當(dāng)上述計(jì)算結(jié)果與上述讀寫次數(shù)失敗閾值相等時(shí),上述微控制器確定上述磁盤出現(xiàn)故障,并發(fā)出磁盤故障指令;
步驟408、當(dāng)上述計(jì)算結(jié)果小于上述讀寫次數(shù)失敗閾值時(shí),上述微控制器將上述計(jì)算結(jié)果作為讀寫失敗次數(shù)存量數(shù)據(jù)并進(jìn)行存儲。
在上述步驟400中,微處理器會實(shí)時(shí)監(jiān)測磁盤的讀寫狀態(tài),在磁盤出現(xiàn)讀寫錯(cuò)誤時(shí),生成上述磁盤的讀寫失敗次數(shù)增量數(shù)據(jù)。
在上述步驟402中,微處理器從磁盤中獲取預(yù)存的讀寫失敗次數(shù)存量數(shù)據(jù)。
在上述步驟406中,微控制器發(fā)出磁盤故障指令后,將預(yù)存的讀寫失敗次數(shù)存量數(shù)據(jù)重置。以開啟新一輪的磁盤故障檢測。
在上述步驟408中,微控制器將上述計(jì)算結(jié)果作為讀寫失敗次數(shù)存量數(shù)據(jù)并存儲到磁盤中。
上述路由器100、微控制器1020、無線通信裝置1022和磁盤1024均可以采用現(xiàn)有技術(shù)中能夠?qū)崿F(xiàn)相應(yīng)功能的裝置和設(shè)備,這里不再一一贅述。
綜上所述,本實(shí)施例提供的nas設(shè)備,在nas設(shè)備中使存儲模塊直接與路由器連接,與相關(guān)技術(shù)中路由器與服務(wù)器連接相比,可以在存儲模塊出現(xiàn)問題時(shí)及時(shí)對存儲模塊的故障進(jìn)行識別,并進(jìn)行相應(yīng)的故障切換。
為了更好地對上述nas設(shè)備的功能進(jìn)行描述,參見圖2所示的分布式處理系統(tǒng),本實(shí)施例還提出一種分布式處理系統(tǒng),包括:上述的nas設(shè)備200、中心服務(wù)器210和多個(gè)節(jié)點(diǎn)服務(wù)器220;
其中,上述中心服務(wù)器210中設(shè)置有針對不同任務(wù)類型的計(jì)算單元中心端212,每個(gè)上述節(jié)點(diǎn)服務(wù)器220分別設(shè)置有與上述計(jì)算單元中心端212對應(yīng)的計(jì)算單元節(jié)點(diǎn)端222,上述計(jì)算單元中心端212和對應(yīng)的上述計(jì)算單元節(jié)點(diǎn)端222組成一個(gè)計(jì)算單元;
上述中心服務(wù)器210用于接收用戶發(fā)送的視頻圖像任務(wù),根據(jù)上述視頻圖像任務(wù)的類型,以及上述多個(gè)節(jié)點(diǎn)服務(wù)器220當(dāng)前的任務(wù)數(shù)量和負(fù)載情況,將上述視頻圖像任務(wù)通過計(jì)算單元中心端212分配給對應(yīng)的節(jié)點(diǎn)服務(wù)器220;
上述節(jié)點(diǎn)服務(wù)器220用于通過上述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端222對上述視頻圖像任務(wù)進(jìn)行處理,得到處理結(jié)果;
上述nas設(shè)備200,用于對上述節(jié)點(diǎn)服務(wù)器220的處理結(jié)果進(jìn)行存儲和備份。
上述視頻圖像任務(wù),包括視頻任務(wù)和圖像任務(wù),其中視頻任務(wù)是指用戶發(fā)出的對視頻或者視頻圖像進(jìn)行處理的任務(wù);圖像任務(wù)是指戶發(fā)出的對視頻或者視頻圖像進(jìn)行處理的任務(wù);由于視頻任務(wù)和圖像任務(wù)在處理上比較類似,所以分布式處理系統(tǒng)中設(shè)置的計(jì)算單元可以對視頻任務(wù)和圖像任務(wù)進(jìn)行同時(shí)處理。
綜上所述,本實(shí)施例提供的分布式處理系統(tǒng),通過設(shè)置的中心服務(wù)器接收用戶發(fā)送的視頻圖像任務(wù),根據(jù)服務(wù)器集群中多個(gè)節(jié)點(diǎn)服務(wù)器當(dāng)前的任務(wù)數(shù)量和負(fù)載情況,將視頻圖像任務(wù)通過中心服務(wù)器設(shè)置的計(jì)算單元中心端分配給服務(wù)器集群中任一節(jié)點(diǎn)服務(wù)器中與該計(jì)算單元中心端對應(yīng)的計(jì)算單元節(jié)點(diǎn)端中,通過視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端對視頻圖像任務(wù)進(jìn)行處理;通過在中心服務(wù)器中設(shè)置對視頻圖像任務(wù)進(jìn)行分配的計(jì)算單元中心端,以及在服務(wù)器集群的每個(gè)服務(wù)器中設(shè)置可以處理相應(yīng)類型視頻圖像任務(wù)的計(jì)算單元節(jié)點(diǎn)端,從而可以使用一個(gè)服務(wù)器集群的多個(gè)服務(wù)器就可以處理不同類型的視頻圖像任務(wù),無需部署多個(gè)服務(wù)器集群才能滿足視頻圖像任務(wù)的處理需求,提高了服務(wù)器集群的利用率,降低了服務(wù)器集群的建設(shè)成本,而且通過一個(gè)服務(wù)器集群的多個(gè)服務(wù)器處理不同類型的視頻圖像任務(wù),提高了服務(wù)器集群中服務(wù)器資源的利用率,避免了資源的浪費(fèi)。
相關(guān)技術(shù)中,對任務(wù)進(jìn)行分配的服務(wù)器會根據(jù)接收的視頻圖像任務(wù)的任務(wù)類型的不同,通過不同的接口來接收用戶發(fā)送過來的不同種類的任務(wù),所以在服務(wù)器的前期開發(fā)時(shí),需要針對不同的任務(wù)類型來開發(fā)出不同的接口,為了減少開發(fā)的接口的數(shù)量,上述中心服務(wù)器包括:通用任務(wù)接口,通過上述通用任務(wù)接口,獲取用戶發(fā)送的具有不同任務(wù)類型的上述視頻圖像任務(wù)。
通過以上的描述可以看出,通過設(shè)置的通用任務(wù)接口,接收用戶發(fā)送的具有不同任務(wù)類型的任務(wù),無需對各個(gè)計(jì)算單元分別設(shè)計(jì)接口,提高了軟件的開發(fā)速度。具體地,上述分布式處理系統(tǒng)中為了對視頻圖像任務(wù)進(jìn)行分配和處理,上述中心服務(wù)器包括:
任務(wù)數(shù)量確定模塊,用于根據(jù)當(dāng)前服務(wù)器集群中各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量,確定已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器;第一選擇模塊,用于選擇任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器作為上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器;第二選擇模塊,用于當(dāng)有多個(gè)節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量均最少時(shí),選擇上述多個(gè)節(jié)點(diǎn)服務(wù)器中資源利用率最低的節(jié)點(diǎn)服務(wù)器作為上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器,上述資源利用率包括以下至少一種服務(wù)器硬件資源的利用率:中央處理器、內(nèi)存和網(wǎng)絡(luò)帶寬。
相應(yīng)地,上述節(jié)點(diǎn)服務(wù)器包括:信息上報(bào)模塊,用于周期性向上述中心服務(wù)器反饋當(dāng)前的資源利用率。
中心服務(wù)器在接收到節(jié)點(diǎn)服務(wù)器周期性反饋的當(dāng)前各服務(wù)器的資源利用率數(shù)據(jù)后,會將接收到的當(dāng)前各服務(wù)器的資源利用率的數(shù)據(jù)緩存起來。由于節(jié)點(diǎn)服務(wù)器是周期性向中心服務(wù)器反饋當(dāng)前的資源利用率,那么當(dāng)預(yù)設(shè)的時(shí)長到達(dá)時(shí),中心服務(wù)器會再一次接收到節(jié)點(diǎn)服務(wù)器反饋的當(dāng)前各服務(wù)器的資源利用率的數(shù)據(jù),此時(shí)中心服務(wù)器會將緩存的資源利用率的數(shù)據(jù)擦除掉,然后將當(dāng)前接收到的各服務(wù)器的資源利用率的數(shù)據(jù)寫入緩存中。
任務(wù)數(shù)量確定模塊,具體包括:任務(wù)數(shù)量獲取單元,用于獲取服務(wù)器集群中各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量;任務(wù)數(shù)量比對單元,用于對比各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量,確定已分配任務(wù)數(shù)量的最小值;節(jié)點(diǎn)服務(wù)器確定單元,用于選擇已分配任務(wù)數(shù)量的最小值對應(yīng)的節(jié)點(diǎn)服務(wù)器作為已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器。
當(dāng)任務(wù)數(shù)量確定模塊確定當(dāng)前有多個(gè)節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量均最少時(shí),第二選擇模塊,具體包括:資源利用率獲取單元,用于獲取中心服務(wù)器中緩存的已分配任務(wù)數(shù)量均最少的多個(gè)節(jié)點(diǎn)服務(wù)器的資源利用率的數(shù)據(jù);資源利用率對比單元,用于對比已分配任務(wù)數(shù)量均最少的多個(gè)節(jié)點(diǎn)服務(wù)器的資源利用率的高低,確定資源利用率的最低值;節(jié)點(diǎn)服務(wù)器確定單元,用于選擇資源利用率的最低值對應(yīng)的節(jié)點(diǎn)服務(wù)器作為已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器。
服務(wù)器主要通過中央處理器對視頻圖像任務(wù)進(jìn)行處理,則資源利用率對比單元在對比已分配任務(wù)數(shù)量均最少的多個(gè)節(jié)點(diǎn)服務(wù)器的資源利用率的高低時(shí),優(yōu)選通過對比各服務(wù)器中的中央處理器各核心的使用率來確定資源利用率最低的節(jié)點(diǎn)服務(wù)器。
任務(wù)數(shù)量比對單元和資源利用率對比單元可以采用現(xiàn)有的任何比較數(shù)量大小的方法來分別確定已分配任務(wù)數(shù)量的最小值和資源利用率的最低值,這里不再一一贅述。
通過以上的描述可以看出,在向各服務(wù)器分配任務(wù)時(shí),通過負(fù)載均衡的原則對任務(wù)進(jìn)行分配,可以根據(jù)服務(wù)器集群中各服務(wù)器的使用情況,在分配任務(wù)時(shí),對服務(wù)器集群中的各個(gè)服務(wù)器進(jìn)行統(tǒng)一的管理和分配。
為了根據(jù)服務(wù)器的負(fù)載情況向各服務(wù)器分配處理的任務(wù),中心服務(wù)器通過設(shè)置任務(wù)添加模塊和任務(wù)刪除模塊以及節(jié)點(diǎn)服務(wù)器設(shè)置的任務(wù)反饋模塊來實(shí)時(shí)掌握各服務(wù)器的負(fù)載情況。中心服務(wù)器具體包括:任務(wù)添加模塊,用于查找上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表,在上述任務(wù)列表的已分配任務(wù)數(shù)量中添加上述視頻圖像任務(wù);任務(wù)刪除模塊,用于當(dāng)接收到上述計(jì)算單元節(jié)點(diǎn)端發(fā)送的上述視頻圖像任務(wù)已完成的信息時(shí),將上述任務(wù)列表的已分配任務(wù)數(shù)量中上述視頻圖像任務(wù)刪除。
相應(yīng)地,上述節(jié)點(diǎn)服務(wù)器包括:任務(wù)反饋模塊,用于當(dāng)上述視頻圖像任務(wù)完成時(shí),通過上述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端向上述中心服務(wù)器發(fā)送任務(wù)已完成的信息,上述任務(wù)已完成的信息攜帶有對應(yīng)的計(jì)算單元所在節(jié)點(diǎn)服務(wù)器的標(biāo)識。
每個(gè)任務(wù)列表中記錄有每個(gè)節(jié)點(diǎn)服務(wù)器的標(biāo)識和節(jié)點(diǎn)服務(wù)器的標(biāo)識對應(yīng)的節(jié)點(diǎn)服務(wù)器已分配任務(wù)數(shù)量,當(dāng)中心服務(wù)器確定由已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器處理視頻圖像任務(wù)時(shí),中心服務(wù)器就會在已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器的任務(wù)列表中添加視頻圖像任務(wù),從而對已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器的任務(wù)列表進(jìn)行更新。
當(dāng)接收到計(jì)算單元節(jié)點(diǎn)端發(fā)送的視頻圖像任務(wù)已完成的信息時(shí),任務(wù)刪除模塊根據(jù)視頻圖像任務(wù)已完成的信息中記錄的節(jié)點(diǎn)服務(wù)器的標(biāo)識,查詢到節(jié)點(diǎn)服務(wù)器的標(biāo)識對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表,在節(jié)點(diǎn)服務(wù)器的標(biāo)識對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表中將任務(wù)列表的已分配任務(wù)數(shù)量中視頻圖像任務(wù)刪除,從而對任務(wù)列表進(jìn)行更新。
在接收到視頻圖像任務(wù)已完成的信息后,中心服務(wù)器會通過通用任務(wù)接口向用戶發(fā)送視頻圖像任務(wù)完成的消息,并通知用戶處理完畢后視頻圖像任務(wù)處理結(jié)果的存儲地址,使用戶可以通過存儲地址獲取視頻圖像任務(wù)的處理結(jié)果。
通過以上的描述可以看出,通過預(yù)設(shè)的任務(wù)列表記錄各服務(wù)器所分配的任務(wù)數(shù)量,就可以實(shí)時(shí)的確定各服務(wù)器的負(fù)載情況,從而根據(jù)服務(wù)器的負(fù)載情況向各服務(wù)器分配處理的任務(wù),可以使服務(wù)器的負(fù)載更加均衡。
隨著視頻處理和視頻圖像處理技術(shù)的發(fā)展,用戶對視頻圖像任務(wù)的處理需求越來越多,分布式處理系統(tǒng)中現(xiàn)有設(shè)置的計(jì)算單元不能對用戶發(fā)出的某些任務(wù)類型的視頻圖像任務(wù)進(jìn)行有效處理時(shí),中心服務(wù)器具體包括:指令獲取模塊,用于獲取計(jì)算單元添加指令,上述計(jì)算單元添加指令攜帶有計(jì)算單元數(shù)據(jù)包;中心端設(shè)置模塊,用于根據(jù)上述計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端,并為設(shè)置的上述計(jì)算單元中心端分配端口;發(fā)送模塊,用于將上述計(jì)算單元數(shù)據(jù)包和分配給上述計(jì)算單元中心端的端口的端口號發(fā)送給上述多個(gè)節(jié)點(diǎn)服務(wù)器。
相應(yīng)地,上述節(jié)點(diǎn)服務(wù)器包括:節(jié)點(diǎn)端設(shè)置模塊,用于接收到上述計(jì)算單元數(shù)據(jù)包后,設(shè)置對應(yīng)的計(jì)算單元節(jié)點(diǎn)端;連接建立模塊,用于通過上述端口號對應(yīng)的端口為設(shè)置的上述計(jì)算單元節(jié)點(diǎn)端與上述計(jì)算單元中心端建立連接。
當(dāng)分布式處理系統(tǒng)的維護(hù)人員發(fā)現(xiàn)某種類型的視頻圖像任務(wù)由分布式處理系統(tǒng)中現(xiàn)有的所有計(jì)算單元處理時(shí)所耗費(fèi)的處理時(shí)間均較長,不能向用戶及時(shí)反饋處理結(jié)果時(shí),就會根據(jù)這種類型的視頻圖像任務(wù)的處理特點(diǎn),確定可以有效處理該種類型的視頻圖像任務(wù)的計(jì)算單元,然后獲取處理該種類型的視頻圖像任務(wù)的計(jì)算單元的計(jì)算單元數(shù)據(jù)包,并通過獲取到的計(jì)算單元數(shù)據(jù)包形成計(jì)算單元添加指令,將形成的計(jì)算單元添加指令發(fā)送給中心服務(wù)器,以使中心服務(wù)器根據(jù)計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端。
分布式處理系統(tǒng)的維護(hù)人員可以從系統(tǒng)后臺服務(wù)器中獲取處理該種類型的視頻圖像任務(wù)的計(jì)算單元的計(jì)算單元數(shù)據(jù)包,也可以通過網(wǎng)絡(luò)下載處理該種類型的視頻圖像任務(wù)的計(jì)算單元的計(jì)算單元數(shù)據(jù)包,還可以通過現(xiàn)有的任何數(shù)據(jù)包獲取方式,來獲取計(jì)算單元數(shù)據(jù)包,這里不再一一贅述。
當(dāng)然,中心服務(wù)器中設(shè)置的各計(jì)算單元的計(jì)算單元中心端也可以對所處理的視頻圖像任務(wù)的處理時(shí)間進(jìn)行記錄,并在任務(wù)處理完成時(shí),將視頻圖像任務(wù)的處理時(shí)間和任務(wù)已完成的信息一起反饋給中心服務(wù)器,中心服務(wù)器可以將視頻圖像任務(wù)的處理時(shí)間與預(yù)設(shè)的處理時(shí)間閾值進(jìn)行對比,當(dāng)該視頻圖像任務(wù)的處理時(shí)間大于預(yù)設(shè)的處理時(shí)間閾值時(shí),說明當(dāng)前的計(jì)算單元不適合對這種類型的視頻圖像任務(wù)進(jìn)行處理,那么中心服務(wù)器會將該視頻圖像任務(wù)的任務(wù)類型與其他的計(jì)算單元進(jìn)行關(guān)聯(lián),使得下一次對這種類型的視頻圖像任務(wù)進(jìn)行處理時(shí),可用其他的計(jì)算單元進(jìn)行處理,當(dāng)中心服務(wù)器確定當(dāng)前設(shè)置的計(jì)算單元均不適合對這種類型的視頻圖像任務(wù)進(jìn)行處理時(shí),就會從系統(tǒng)后臺服務(wù)器中確定并獲取處理該種類型的視頻圖像任務(wù)的計(jì)算單元的計(jì)算單元數(shù)據(jù)包,并通過獲取到的計(jì)算單元數(shù)據(jù)包形成計(jì)算單元添加指令,將形成的計(jì)算單元添加指令發(fā)送給中心服務(wù)器,以使中心服務(wù)器根據(jù)計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端。
通過以上的描述可以看出,中心服務(wù)器根據(jù)獲取計(jì)算單元添加指令設(shè)置計(jì)算單元,而且添加計(jì)算單元的過程簡單方便快捷,使用靈活方便,而且在添加新的計(jì)算單元后,可以減少視頻圖像任務(wù)的處理時(shí)間并可以及時(shí)對任務(wù)進(jìn)行處理。
隨著視頻處理和視頻圖像處理技術(shù)的發(fā)展,分布式處理系統(tǒng)中現(xiàn)有設(shè)置的一些計(jì)算單元所處理的視頻圖像任務(wù)越來越少,甚至有些計(jì)算單元已不再被使用,但是這些不再被使用的計(jì)算單元仍然會占用中心服務(wù)器和節(jié)點(diǎn)服務(wù)器的資源造成服務(wù)器資源的浪費(fèi),為了避免資源浪費(fèi),中心服務(wù)器具體包括:刪除指令獲取模塊,用于獲取計(jì)算單元?jiǎng)h除指令,上述計(jì)算單元?jiǎng)h除指令中攜帶有計(jì)算單元的標(biāo)識;計(jì)算單元中心端卸載模塊,用于根據(jù)上述計(jì)算單元?jiǎng)h除指令中攜帶的計(jì)算單元的標(biāo)識,卸載計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元中心端;刪除指令下發(fā)模塊,用于向上述多個(gè)節(jié)點(diǎn)服務(wù)器發(fā)送上述計(jì)算單元?jiǎng)h除指令。
上述節(jié)點(diǎn)服務(wù)器包括:計(jì)算單元節(jié)點(diǎn)端卸載模塊,用于當(dāng)接收到上述計(jì)算單元?jiǎng)h除指令時(shí),根據(jù)上述計(jì)算單元?jiǎng)h除命令中的計(jì)算單元的標(biāo)識,卸載上述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元節(jié)點(diǎn)端。
當(dāng)分布式處理系統(tǒng)的維護(hù)人員發(fā)現(xiàn)某種類型的視頻圖像任務(wù)長時(shí)間不再處理任務(wù)時(shí),就會向中心服務(wù)器發(fā)送攜帶有計(jì)算單元的標(biāo)識的計(jì)算單元?jiǎng)h除指令,使得中心服務(wù)器和節(jié)點(diǎn)服務(wù)器刪除計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元。
當(dāng)然,中心服務(wù)器也可以對最近一次向計(jì)算單元分配視頻圖像任務(wù)的任務(wù)分配時(shí)間進(jìn)行記錄,并會周期性的判斷最近一次向計(jì)算單元分配視頻圖像任務(wù)的任務(wù)分配時(shí)間與當(dāng)前時(shí)間的時(shí)間間隔是否達(dá)到了計(jì)算單元的刪除時(shí)間,如果達(dá)到了計(jì)算單元的刪除時(shí)間,那么就向中心服務(wù)器發(fā)送攜帶有可以刪除的計(jì)算單元的標(biāo)識的計(jì)算單元?jiǎng)h除指令,使得中心服務(wù)器和節(jié)點(diǎn)服務(wù)器刪除計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元。
分布式處理系統(tǒng)的維護(hù)人員可以通過中心服務(wù)器的輸入設(shè)備或者與中心服務(wù)器連接的系統(tǒng)后臺服務(wù)器的輸入設(shè)備向中心服務(wù)器發(fā)送計(jì)算單元添加指令和計(jì)算單元?jiǎng)h除指令。
通過以上的描述可以看出,對于不在使用的計(jì)算單元,可以根據(jù)任務(wù)處理的需要進(jìn)行刪除,使用靈活方便,而且卸載計(jì)算單元方便快捷,使得中心服務(wù)器和節(jié)點(diǎn)服務(wù)器中的資源可以被合理運(yùn)用,也不會影響到其它處理單元對任務(wù)的處理過程。
為了對nas設(shè)備中存儲的數(shù)據(jù)進(jìn)行備份,在上述分布式處理系統(tǒng)中,上述nas設(shè)備,用于對上述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行備份,包括:
屬性獲取模塊,用于使用linux系統(tǒng)中的llistxattr命令,獲取待備份的數(shù)據(jù)的nas相關(guān)的擴(kuò)展屬性;數(shù)據(jù)打包模塊,用于將上述數(shù)據(jù)打包為帶有上述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包;數(shù)據(jù)備份模塊,用于將上述文件包備份到磁盤上。
如圖3所示,上述屬性獲取模塊300、上述數(shù)據(jù)打包模塊302和上述數(shù)據(jù)備份模塊304均是nas設(shè)備中微處理器的功能性模塊。在微處理器中,上述屬性獲取模塊300、上述數(shù)據(jù)打包模塊302和上述數(shù)據(jù)備份模塊304依次連接。
其中,上述帶有上述nas設(shè)備相關(guān)的擴(kuò)展屬性的tar格式的文件包包括:用于存放上述數(shù)據(jù)的讀寫權(quán)限的字段、用于存放上述數(shù)據(jù)的名稱的字段、用于存放上述數(shù)據(jù)的頭信息的字段、用于存放上述數(shù)據(jù)的內(nèi)容的字段、與用于存放上述nas相關(guān)的擴(kuò)展屬性的字段;
上述用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的字段包括:用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的名稱的子字段、用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的名稱的長度的子字段、用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的值的子字段、與用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的長度的子字段。
在一個(gè)實(shí)施方式中,帶有nas設(shè)備相關(guān)的擴(kuò)展屬性的tar格式的文件包的結(jié)構(gòu)有很多,本發(fā)明實(shí)施例中不做具體限定。優(yōu)選的,帶有nas設(shè)備相關(guān)的擴(kuò)展屬性的tar格式的文件包可以包括如下內(nèi)容:
用于存放該數(shù)據(jù)的讀寫權(quán)限的字段、用于存放該數(shù)據(jù)的名稱的字段、用于存放該數(shù)據(jù)的頭信息的字段、用于存放該數(shù)據(jù)的內(nèi)容的字段、與用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的字段。其中,該數(shù)據(jù)的頭信息中可以包括ndmp協(xié)議版本、ndmp程序版本、磁盤位置等信息,用于支持該數(shù)據(jù)的兼容性。其中,字段至在文件包中可以按照任意的順序排列,此處不做限定。
更為優(yōu)選的,用于存放該nas設(shè)備相關(guān)的擴(kuò)展屬性的字段可以包括如下內(nèi)容:用于存放該nas設(shè)備相關(guān)的擴(kuò)展屬性的名稱的子字段、用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的名稱的長度的子字段、用于存放該nas設(shè)備相關(guān)的擴(kuò)展屬性的值的子字段、與用于存放上述nas設(shè)備相關(guān)的擴(kuò)展屬性的長度的子字段。
本實(shí)施例提出了的nas設(shè)備,其中,屬性獲取模塊獲取待備份的數(shù)據(jù)的nas設(shè)備相關(guān)的擴(kuò)展屬性;數(shù)據(jù)打包模塊將數(shù)據(jù)打包為帶有nas設(shè)備相關(guān)的擴(kuò)展屬性的tar格式的文件包;數(shù)據(jù)備份模塊將文件包備份到磁盤上。由于本實(shí)施例中的數(shù)據(jù)備份系統(tǒng)在備份數(shù)據(jù)時(shí)會將數(shù)據(jù)的nas設(shè)備相關(guān)的擴(kuò)展屬性一同打包備份到磁盤上,因此與現(xiàn)有技術(shù)相比,本實(shí)施例中備份到磁盤上的文件包中包括額外的信息,即數(shù)據(jù)的擴(kuò)展屬性。因此備份服務(wù)可以基于該額外的擴(kuò)展屬性,實(shí)現(xiàn)現(xiàn)有技術(shù)中不提供的額外的擴(kuò)展功能,如數(shù)據(jù)的跨系統(tǒng)訪問、數(shù)據(jù)的快速定位等功能。
實(shí)施例2
本實(shí)施例提供一種分布式處理方法,應(yīng)用上述實(shí)施例1描述的分布式處理系統(tǒng),分布式處理系統(tǒng)包括:nas設(shè)備、中心服務(wù)器和多個(gè)節(jié)點(diǎn)服務(wù)器;包括以下具體步驟:
(1)上述中心服務(wù)器接收用戶發(fā)送的視頻圖像任務(wù);
(2)上述中心服務(wù)器根據(jù)當(dāng)前服務(wù)器集群中各節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量,確定已分配任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器;
(3)上述中心服務(wù)器選擇任務(wù)數(shù)量最少的節(jié)點(diǎn)服務(wù)器作為上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器;
(4)當(dāng)有多個(gè)節(jié)點(diǎn)服務(wù)器的已分配任務(wù)數(shù)量均最少時(shí),上述中心服務(wù)器選擇上述多個(gè)節(jié)點(diǎn)服務(wù)器中資源利用率最低的節(jié)點(diǎn)服務(wù)器作為上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器,上述資源利用率包括以下至少一種服務(wù)器硬件資源的利用率:中央處理器、內(nèi)存和網(wǎng)絡(luò)帶寬;其中,上述節(jié)點(diǎn)服務(wù)器周期性向上述中心服務(wù)器反饋當(dāng)前的資源利用率;
(5)上述節(jié)點(diǎn)服務(wù)器接收到上述視頻圖像任務(wù)后,通過上述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端對上述視頻圖像任務(wù)進(jìn)行處理,得到處理結(jié)果;
(6)nas設(shè)備對上述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行存儲和備份;
當(dāng)nas設(shè)備對上述節(jié)點(diǎn)服務(wù)器的處理結(jié)果進(jìn)行備份時(shí),nas設(shè)備具體用于:
(61)使用linux系統(tǒng)中的llistxattr命令,獲取待備份的數(shù)據(jù)的nas相關(guān)的擴(kuò)展屬性;
(62)將上述數(shù)據(jù)打包為帶有上述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包;
(63)將上述文件包備份到磁盤上;
其中,上述帶有上述nas相關(guān)的擴(kuò)展屬性的tar格式的文件包包括:用于存放上述數(shù)據(jù)的讀寫權(quán)限的字段、用于存放上述數(shù)據(jù)的名稱的字段、用于存放上述數(shù)據(jù)的頭信息的字段、用于存放上述數(shù)據(jù)的內(nèi)容的字段、與用于存放上述nas相關(guān)的擴(kuò)展屬性的字段;
上述用于存放上述nas相關(guān)的擴(kuò)展屬性的字段包括:用于存放上述nas相關(guān)的擴(kuò)展屬性的名稱的子字段、用于存放上述nas相關(guān)的擴(kuò)展屬性的名稱的長度的子字段、用于存放上述nas相關(guān)的擴(kuò)展屬性的值的子字段、與用于存放上述nas相關(guān)的擴(kuò)展屬性的長度的子字段。
上述分布式處理方法還包括以下具體步驟:
(1)上述中心服務(wù)器查找上述視頻圖像任務(wù)對應(yīng)的節(jié)點(diǎn)服務(wù)器的任務(wù)列表,在上述任務(wù)列表的已分配任務(wù)數(shù)量中添加上述視頻圖像任務(wù);
(2)當(dāng)接收到上述計(jì)算單元節(jié)點(diǎn)端發(fā)送的上述視頻圖像任務(wù)已完成的信息時(shí),上述中心服務(wù)器將上述任務(wù)列表的已分配任務(wù)數(shù)量中上述視頻圖像任務(wù)刪除;
(3)當(dāng)上述視頻圖像任務(wù)完成時(shí),上述節(jié)點(diǎn)服務(wù)器通過上述視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端向上述中心服務(wù)器發(fā)送任務(wù)已完成的信息,上述任務(wù)已完成的信息攜帶有對應(yīng)的計(jì)算單元所在節(jié)點(diǎn)服務(wù)器的標(biāo)識。
上述分布式處理方法還包括以下具體步驟:
(1)上述中心服務(wù)器獲取計(jì)算單元添加指令,上述計(jì)算單元添加指令攜帶有計(jì)算單元數(shù)據(jù)包;
(2)上述中心服務(wù)器根據(jù)上述計(jì)算單元數(shù)據(jù)包,設(shè)置對應(yīng)的計(jì)算單元中心端,并為設(shè)置的上述計(jì)算單元中心端分配端口;
(3)上述中心服務(wù)器將上述計(jì)算單元數(shù)據(jù)包和分配給上述計(jì)算單元中心端的端口的端口號發(fā)送給上述多個(gè)節(jié)點(diǎn)服務(wù)器;
(4)上述節(jié)點(diǎn)服務(wù)器接收到上述計(jì)算單元數(shù)據(jù)包后,設(shè)置對應(yīng)的計(jì)算單元節(jié)點(diǎn)端;
(5)上述節(jié)點(diǎn)服務(wù)器通過上述端口號對應(yīng)的端口為設(shè)置的上述計(jì)算單元節(jié)點(diǎn)端與上述計(jì)算單元中心端建立連接。
上述分布式處理方法還包括以下具體步驟
(1)上述中心服務(wù)器獲取計(jì)算單元?jiǎng)h除指令,上述計(jì)算單元?jiǎng)h除指令中攜帶有計(jì)算單元的標(biāo)識;
(2)上述中心服務(wù)器根據(jù)上述計(jì)算單元?jiǎng)h除指令中攜帶的計(jì)算單元的標(biāo)識,卸載上述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元中心端;
(3)上述中心服務(wù)器向上述多個(gè)節(jié)點(diǎn)服務(wù)器發(fā)送上述計(jì)算單元?jiǎng)h除指令;
(4)當(dāng)接收到上述計(jì)算單元?jiǎng)h除指令時(shí),上述節(jié)點(diǎn)服務(wù)器根據(jù)上述計(jì)算單元?jiǎng)h除命令中的計(jì)算單元的標(biāo)識,卸載上述計(jì)算單元的標(biāo)識對應(yīng)的計(jì)算單元節(jié)點(diǎn)端。
上述分布式處理方法的具體實(shí)現(xiàn)過程在實(shí)施例1中均有具體描述,本實(shí)施例不再贅述。
綜上所述,本實(shí)施例提供的分布式處理方法,通過設(shè)置的中心服務(wù)器接收用戶發(fā)送的視頻圖像任務(wù),根據(jù)服務(wù)器集群中多個(gè)節(jié)點(diǎn)服務(wù)器當(dāng)前的任務(wù)數(shù)量和負(fù)載情況,將視頻圖像任務(wù)通過中心服務(wù)器設(shè)置的計(jì)算單元中心端分配給服務(wù)器集群中任一節(jié)點(diǎn)服務(wù)器中與該計(jì)算單元中心端對應(yīng)的計(jì)算單元節(jié)點(diǎn)端中,通過視頻圖像任務(wù)對應(yīng)的計(jì)算單元節(jié)點(diǎn)端對視頻圖像任務(wù)進(jìn)行處理;通過在中心服務(wù)器中設(shè)置對視頻圖像任務(wù)進(jìn)行分配的計(jì)算單元中心端,以及在服務(wù)器集群的每個(gè)服務(wù)器中設(shè)置可以處理相應(yīng)類型視頻圖像任務(wù)的計(jì)算單元節(jié)點(diǎn)端,從而可以使用一個(gè)服務(wù)器集群的多個(gè)服務(wù)器就可以處理不同類型的視頻圖像任務(wù),無需部署多個(gè)服務(wù)器集群才能滿足視頻圖像任務(wù)的處理需求,提高了服務(wù)器集群的利用率,降低了服務(wù)器集群的建設(shè)成本,而且通過一個(gè)服務(wù)器集群的多個(gè)服務(wù)器處理不同類型的視頻圖像任務(wù),提高了服務(wù)器集群中服務(wù)器資源的利用率,避免了資源的浪費(fèi)。
本發(fā)明實(shí)施例所提供的進(jìn)行分布式處理方法的計(jì)算機(jī)程序產(chǎn)品,包括存儲了程序代碼的計(jì)算機(jī)可讀存儲介質(zhì),所述程序代碼包括的指令可用于執(zhí)行前面方法實(shí)施例中所述的方法,具體實(shí)現(xiàn)可參見方法實(shí)施例,在此不再贅述。
所屬領(lǐng)域的技術(shù)人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實(shí)施例中的對應(yīng)過程,在此不再贅述。
在本申請所提供的幾個(gè)實(shí)施例中,應(yīng)該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實(shí)現(xiàn)。以上所描述的裝置實(shí)施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實(shí)際實(shí)現(xiàn)時(shí)可以有另外的劃分方式,又例如,多個(gè)單元或組件可以結(jié)合或者可以集成到另一個(gè)系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點(diǎn),所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些通信接口,裝置或單元的間接耦合或通信連接,可以是電性,機(jī)械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部單元來實(shí)現(xiàn)本實(shí)施例方案的目的。
另外,在本發(fā)明各個(gè)實(shí)施例中的各功能單元可以集成在一個(gè)處理單元中,也可以是各個(gè)單元單獨(dú)物理存在,也可以兩個(gè)或兩個(gè)以上單元集成在一個(gè)單元中。
所述功能如果以軟件功能單元的形式實(shí)現(xiàn)并作為獨(dú)立的產(chǎn)品銷售或使用時(shí),可以存儲在一個(gè)計(jì)算機(jī)可讀取存儲介質(zhì)中?;谶@樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分或者該技術(shù)方案的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個(gè)存儲介質(zhì)中,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例所述方法的全部或部分步驟。而前述的存儲介質(zhì)包括:u盤、移動硬盤、只讀存儲器(rom,read-onlymemory)、隨機(jī)存取存儲器(ram,randomaccessmemory)、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
以上所述,僅為本發(fā)明的具體實(shí)施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。