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

服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法及系統(tǒng)的制作方法

文檔序號(hào):7782815閱讀:304來(lái)源:國(guó)知局
服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法及系統(tǒng)的制作方法
【專利摘要】本申請(qǐng)公開了一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法與系統(tǒng),可以避免數(shù)據(jù)文件在寫入磁盤陣列時(shí)所發(fā)生的傳輸錯(cuò)誤。本申請(qǐng)更新方法包括:服務(wù)器監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng);若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;若監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
【專利說(shuō)明】服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本申請(qǐng)涉及數(shù)據(jù)傳輸?shù)南到y(tǒng)與方法,具體涉及一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著網(wǎng)絡(luò)流量的快速成長(zhǎng),許多過去不容易實(shí)現(xiàn)的服務(wù)也可以被輕易的完成。例如:寬帶上傳多媒體文件(multimedia file)。由于海量的傳輸仍會(huì)影響服務(wù)器的負(fù)荷量。因此在已知的多媒體服務(wù)器也會(huì)具備帶寬管理(Bandwidth Manager)的功能。服務(wù)器可以透過帶寬分布或緩存等方式減輕同時(shí)間的資料傳輸量。
[0003]此外,所述的傳輸方式更結(jié)合了多個(gè)實(shí)體磁盤,使得數(shù)據(jù)可以同步的寫入所述磁盤中。而現(xiàn)有技術(shù)對(duì)數(shù)據(jù)寫入磁盤的方式,是將數(shù)據(jù)同步的由來(lái)源端寫入服務(wù)器中。
[0004]而數(shù)據(jù)文件是以緩存(buffer)的方式寫入分散式文件裝置中。因此所有的數(shù)據(jù)文件都會(huì)被排入同一個(gè)緩存中。這樣會(huì)造成數(shù)據(jù)文件取出時(shí)的混亂。特別是,不同種類的數(shù)據(jù)文件若是指針指向錯(cuò)誤時(shí)會(huì)造成兩筆數(shù)據(jù)文件的會(huì)毀損。

【發(fā)明內(nèi)容】

[0005]本申請(qǐng)所要解決的技術(shù)問題在于提供一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法,可以避免數(shù)據(jù)文件在寫入磁盤陣列時(shí)所發(fā)生的傳輸錯(cuò)誤。
[0006]為了解決上述問題,本申請(qǐng)揭示了一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法包括:月艮務(wù)器監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng);若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;若監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
[0007]進(jìn)一步地,將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列的步驟進(jìn)一步包括:將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。
[0008]進(jìn)一步地,服務(wù)器通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。
[0009]進(jìn)一步地,在所述若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,還包括:創(chuàng)建監(jiān)控該數(shù)據(jù)隊(duì)列的工作線程,用于監(jiān)控該數(shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng);在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),所述方法還包括:刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程。
[0010]為了解決上述問題,本申請(qǐng)另揭示了一種數(shù)據(jù)切分的傳輸系統(tǒng),內(nèi)存模塊,用于存儲(chǔ)數(shù)據(jù)文件和數(shù)據(jù)隊(duì)列;監(jiān)聽模塊,用于監(jiān)測(cè)服務(wù)器中所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng);隊(duì)列管理模塊,連接于所述監(jiān)聽模塊,所述隊(duì)列管理模塊用于若所述監(jiān)聽模塊監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;以及,若所述監(jiān)聽模塊監(jiān)測(cè)到到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。[0011]進(jìn)一步地,將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列時(shí),還包括:將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。
[0012]進(jìn)一步地,所述監(jiān)聽模塊通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。
[0013]所述系統(tǒng)進(jìn)一步包括:隊(duì)列監(jiān)控模塊,
[0014]所述隊(duì)列監(jiān)控模塊,用于在所述若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,創(chuàng)建監(jiān)控?cái)?shù)據(jù)隊(duì)列的工作線程,所述工作線程用于監(jiān)控該數(shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng);
[0015]所述隊(duì)列監(jiān)控模塊,還用于在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程。
[0016]與現(xiàn)有技術(shù)相比,本申請(qǐng)可以獲得包括以下技術(shù)效果:
[0017]I)本申請(qǐng)改進(jìn)數(shù)據(jù)文件的傳輸過程,數(shù)據(jù)文件寫入時(shí)若發(fā)生錯(cuò)誤,本申請(qǐng)不需重新從客戶端中取得數(shù)據(jù)文件。
[0018]2)本申請(qǐng)若于傳輸數(shù)據(jù)文件的期間中發(fā)生錯(cuò)誤,本申請(qǐng)可以透過至少一臺(tái)心跳服務(wù)器發(fā)報(bào)給報(bào)警服務(wù)器,使得后臺(tái)人員可以實(shí)時(shí)的得知何項(xiàng)組件發(fā)生異常。
[0019]當(dāng)然,實(shí)施本申請(qǐng)的任一產(chǎn)品必不一定需要同時(shí)達(dá)到以上所述的所有技術(shù)效果。
【專利附圖】

【附圖說(shuō)明】
[0020]此處所說(shuō)明的附圖用來(lái)提供對(duì)本申請(qǐng)的進(jìn)一步理解,構(gòu)成本申請(qǐng)的一部分,本申請(qǐng)的示意性實(shí)施例及其說(shuō)明用于解釋本申請(qǐng),并不構(gòu)成對(duì)本申請(qǐng)的不當(dāng)限定。在附圖中:
[0021]圖1是本申請(qǐng)實(shí)施例的架構(gòu)示意圖。
[0022]圖2是本申請(qǐng)實(shí)施例的運(yùn)作流程示意圖。
[0023]圖3是本申請(qǐng)實(shí)施例的細(xì)部架構(gòu)示意圖。
[0024]圖4是本申請(qǐng)實(shí)施例的細(xì)部運(yùn)作流程示意圖。
【具體實(shí)施方式】
[0025]以下將配合附圖及實(shí)施例來(lái)詳細(xì)說(shuō)明本申請(qǐng)的實(shí)施方式,藉此對(duì)本申請(qǐng)如何應(yīng)用技術(shù)手段來(lái)解決技術(shù)問題并達(dá)成技術(shù)功效的實(shí)現(xiàn)過程能充分理解并據(jù)以實(shí)施。
[0026]如在說(shuō)明書及權(quán)利要求當(dāng)中使用了某些詞匯來(lái)指稱特定組件。本領(lǐng)域技術(shù)人員應(yīng)可理解,硬件制造商可能會(huì)用不同名詞來(lái)稱呼同一個(gè)組件。本說(shuō)明書及權(quán)利要求并不以名稱的差異來(lái)作為區(qū)分組件的方式,而是以組件在功能上的差異來(lái)作為區(qū)分的準(zhǔn)則。如在通篇說(shuō)明書及權(quán)利要求當(dāng)中所提及的“包含”為一開放式用語(yǔ),故應(yīng)解釋成“包含但不限定于”?!按笾隆笔侵冈诳山邮盏恼`差范圍內(nèi),本領(lǐng)域技術(shù)人員能夠在一定誤差范圍內(nèi)解決所述技術(shù)問題,基本達(dá)到所述技術(shù)效果。此外,“耦接”一詞在此包含任何直接及間接的電性耦接手段。因此,若文中描述一第一裝置耦接于一第二裝置,則代表所述第一裝置可直接電性耦接于所述第二裝置,或通過其他裝置或耦接手段間接地電性耦接至所述第二裝置。說(shuō)明書后續(xù)描述為實(shí)施本申請(qǐng)的較佳實(shí)施方式,然所述描述乃以說(shuō)明本申請(qǐng)的一般原則為目的,并非用以限定本申請(qǐng)的范圍。本申請(qǐng)的保護(hù)范圍當(dāng)視所附權(quán)利要求所界定者為準(zhǔn)。本申請(qǐng)的服務(wù)器中的數(shù)據(jù)上傳系統(tǒng)。本申請(qǐng)的傳輸系統(tǒng)包括:本地端100與多臺(tái)心跳服務(wù)器210。而本地端100的服務(wù)器是由以下實(shí)體元件所構(gòu)成,請(qǐng)參考圖1:接收模塊110、內(nèi)存模塊120、監(jiān)聽模塊130、隊(duì)列管理模塊140與分散式文件裝置150。
[0027]本申請(qǐng)的服務(wù)器的運(yùn)作流程請(qǐng)參考下述步驟,請(qǐng)參考圖2所示:
[0028]步驟S210:服務(wù)器監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng);
[0029]步驟S220:若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;以及
[0030]步驟S230:若監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
[0031]接收模塊110,用于接收客戶端的數(shù)據(jù)文件。本地端100的服務(wù)器通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。內(nèi)存模塊120連接于接收模塊110,內(nèi)存模塊120用于存儲(chǔ)數(shù)據(jù)文件和數(shù)據(jù)隊(duì)列。具體來(lái)說(shuō),監(jiān)聽模塊140,連接于所述內(nèi)存模塊120,用于監(jiān)測(cè)服務(wù)器中所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。隊(duì)列管理模塊140連接于監(jiān)聽模塊130,所述隊(duì)列管理模塊140用于若所述監(jiān)聽模塊監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列,以及若所述監(jiān)聽模塊監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。隊(duì)列管理模塊140將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列時(shí),還將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。監(jiān)聽模塊130用于監(jiān)測(cè)服務(wù)器中所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。若監(jiān)聽模塊130監(jiān)測(cè)到到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則通知所述隊(duì)列管理模塊140刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
[0032]所述監(jiān)聽模塊130通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。所述監(jiān)聽模塊130根據(jù)新增數(shù)據(jù)文件的操作指令驅(qū)動(dòng)隊(duì)列管理模塊140創(chuàng)建新的數(shù)據(jù)隊(duì)列;所述監(jiān)聽模塊130根據(jù)修改數(shù)據(jù)文件的操作指令,驅(qū)動(dòng)隊(duì)列管理模塊140修改數(shù)據(jù)隊(duì)列中數(shù)據(jù)文件的路徑資訊;所述監(jiān)聽模塊130根據(jù)刪除數(shù)據(jù)文件的操作指令,驅(qū)動(dòng)隊(duì)列管理模塊140刪除隊(duì)列管理模塊140中對(duì)應(yīng)的數(shù)據(jù)隊(duì)列。
[0033]所述系統(tǒng)進(jìn)一步包括:隊(duì)列監(jiān)控模塊160。所述隊(duì)列監(jiān)控模塊160,用于在所述若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列。隊(duì)列監(jiān)控模塊160還用于,在將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,創(chuàng)建監(jiān)控?cái)?shù)據(jù)隊(duì)列的工作線程,所述工作線程用于監(jiān)控該數(shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng);
[0034]所述隊(duì)列監(jiān)控模塊,還用于在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程。
[0035]為進(jìn)一步界定前述服務(wù)器的元件所執(zhí)行的相關(guān)功能,因此更進(jìn)一步的定義各種軟件實(shí)現(xiàn)的功能模塊,而所述的功能模塊請(qǐng)參考圖3:本地目錄161、上傳模塊162、掃描模塊163、控制模塊164、隊(duì)列監(jiān)控模塊165、工作線程166。
[0036]本地目錄161,接收客戶端所發(fā)送的數(shù)據(jù)文件。掃描模塊163,連接于本地目錄161,掃描模塊163監(jiān)視本地目錄的數(shù)據(jù)文件是否異動(dòng)??刂颇K164,耦接于掃描模塊163,控制模塊163包括至少一數(shù)據(jù)隊(duì)列,每一數(shù)據(jù)隊(duì)列儲(chǔ)存對(duì)應(yīng)的數(shù)據(jù)文件的路徑資訊,本地目錄161的任一數(shù)據(jù)文件異動(dòng)時(shí),掃描模塊163根據(jù)異動(dòng)的種類的數(shù)據(jù)文件令控制模塊164創(chuàng)建新的數(shù)據(jù)隊(duì)列或更新已知的數(shù)據(jù)文件的內(nèi)容。上傳模塊162,連接于本地目錄161,本地目錄161的任一數(shù)據(jù)文件異動(dòng)時(shí),上傳模塊162偵測(cè)異動(dòng)的數(shù)據(jù)文件的文件種類,并根據(jù)文件種類將數(shù)據(jù)文件指派至對(duì)應(yīng)的數(shù)據(jù)隊(duì)列。隊(duì)列監(jiān)控模塊165,連接于控制模塊164,隊(duì)列監(jiān)控模塊165根據(jù)數(shù)據(jù)隊(duì)列的數(shù)量產(chǎn)生對(duì)應(yīng)數(shù)量的隊(duì)列監(jiān)控模塊165。隊(duì)列監(jiān)控模塊165根據(jù)數(shù)據(jù)隊(duì)列的數(shù)據(jù)文件的大小決定數(shù)據(jù)文件的切分?jǐn)?shù)量,并根據(jù)切分?jǐn)?shù)量對(duì)數(shù)據(jù)文件進(jìn)行切分,并由每一個(gè)數(shù)據(jù)隊(duì)列對(duì)應(yīng)的工作線程166將切分獲得的數(shù)據(jù)片段分別存儲(chǔ)至分散式文件裝置150。
[0037]上傳模塊162連接于本地目錄161與控制模塊164。掃描模塊163連接于本地目錄161與控制模塊164。在本申請(qǐng)中為能簡(jiǎn)單且清楚的說(shuō)明整體的運(yùn)作方式,因此設(shè)置第一心跳服務(wù)器211與第二心跳服務(wù)器212。但實(shí)際上心跳服務(wù)器120的數(shù)量可以根據(jù)服務(wù)器的運(yùn)行能力、帶寬或安全性等因素所決定。
[0038]控制模塊164連接于掃描模塊163、上傳模塊162、隊(duì)列監(jiān)控模塊165、第一心跳服務(wù)器211與第二心跳服務(wù)器212。每一個(gè)本地目錄161可以存放各自數(shù)據(jù)文件。例如:視頻文件可以被存放置視頻本地目錄,而廣告文件則放至于廣告本地目錄中。一般而言,本地目錄161會(huì)定時(shí)的接收客戶端所傳送過來(lái)的數(shù)據(jù)文件。掃描模塊163監(jiān)視本地目錄161中的文件是否有所異動(dòng)。所述文件異動(dòng)指的是數(shù)據(jù)的新增、搬移、修改或刪除。當(dāng)本地目錄161中的文件有所異動(dòng)時(shí),則上傳模塊162將會(huì)把異動(dòng)的數(shù)據(jù)文件在服務(wù)器中的路徑傳遞至控制模塊164。數(shù)據(jù)隊(duì)列存儲(chǔ)數(shù)據(jù)文件在磁盤上的路徑位置。
[0039]此外,上傳模塊162偵測(cè)本地目錄161所異動(dòng)的數(shù)據(jù)文件的文件種類。廣義而言所述文件種類可能是音頻文件、影片文件或文字文件等等。進(jìn)一步而言,音頻文件又可能細(xì)分為mp3、m4a、AAC或ARM等;影片文件又可細(xì)分為mov、flv、m4v、mkv或mp4等。
[0040]若控制模塊164中未存在數(shù)據(jù)文件的種類的數(shù)據(jù)隊(duì)列時(shí),上傳模塊會(huì)驅(qū)動(dòng)控制模塊164生成新的數(shù)據(jù)隊(duì)列。爾后,若有同一種類的數(shù)據(jù)文件被載入,上傳模塊162會(huì)將新載入的數(shù)據(jù)文件放入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。
[0041]控制模塊164會(huì)根據(jù)所接收到的文件路徑依次分類并產(chǎn)生各自對(duì)應(yīng)的數(shù)據(jù)隊(duì)列,且不同的數(shù)據(jù)隊(duì)列會(huì)指派不同的隊(duì)列監(jiān)控模塊165來(lái)進(jìn)行處理。在圖1中是以第一數(shù)據(jù)隊(duì)列、第二數(shù)據(jù)隊(duì)列與第三數(shù)據(jù)隊(duì)列作為示意。每一個(gè)隊(duì)列監(jiān)控模塊165會(huì)記錄所屬的數(shù)據(jù)隊(duì)列中的文件的切分資訊。在數(shù)據(jù)文件切分之前,隊(duì)列監(jiān)控模塊165先從第一個(gè)數(shù)據(jù)隊(duì)列取出對(duì)頭元素(隊(duì)列的第一個(gè)元素),然后才進(jìn)行切分。而數(shù)據(jù)隊(duì)列的數(shù)據(jù)取出方式是依照先進(jìn)先出(First In First Out, FIFO)的方式所實(shí)現(xiàn)。
[0042]隊(duì)列監(jiān)控模塊165用于在若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,創(chuàng)建監(jiān)控?cái)?shù)據(jù)隊(duì)列的工作線程166,所述工作線程用于監(jiān)控?cái)?shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng)。隊(duì)列監(jiān)控模塊165,還用于在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程166。隊(duì)列監(jiān)控模塊165對(duì)文件進(jìn)行等長(zhǎng)的切分。在完成文件的切分后,每一個(gè)文件切分的片段則定義為切分片段(slice)。隊(duì)列監(jiān)控模塊165偵測(cè)所屬的數(shù)據(jù)隊(duì)列的堆疊數(shù)量超過上限時(shí),隊(duì)列監(jiān)控模塊165會(huì)向第一心跳服務(wù)器211與第二心跳服務(wù)器212發(fā)出報(bào)警信息。
[0043]而切分片段的數(shù)量是可以根據(jù)本地端110的性能所決定。例如:1個(gè)工作線程166可處理50兆的切分片段,那么一個(gè)200兆的數(shù)據(jù)文件分配給4個(gè)工作線程166處理。同理,500兆的數(shù)據(jù)文件,可以分配給10個(gè)工作線程166處理。
[0044]對(duì)于切分時(shí)所記錄的相關(guān)資訊則稱為切分資訊。例如,切分時(shí)的每一個(gè)切分長(zhǎng)度與文件位置的在磁盤中的偏移量(offset)。掃描模塊163發(fā)現(xiàn)本地目錄161中的數(shù)據(jù)文件被刪除時(shí),掃描模塊163會(huì)把控制模塊164中的對(duì)應(yīng)數(shù)據(jù)隊(duì)列予以刪除。
[0045]接著,不同的切分片段會(huì)被指派各自對(duì)應(yīng)的工作線程166,作為讀取本地目錄161的數(shù)據(jù)文件。工作線程166的實(shí)現(xiàn)可以由不同的程序語(yǔ)言所實(shí)現(xiàn)。在本申請(qǐng)中并不局限程序語(yǔ)言的種類,例如,JAVA語(yǔ)言或ASP語(yǔ)言。實(shí)際上,隊(duì)列監(jiān)控模塊165先對(duì)本地目錄161的數(shù)據(jù)文件進(jìn)行切分的估算藉以得到所述數(shù)據(jù)文件的每一個(gè)應(yīng)要被切分的位置。隊(duì)列監(jiān)控模塊165接獲切分片段后會(huì)根據(jù)切分片段的長(zhǎng)度,并分派給工作線程166所屬的部分?jǐn)?shù)據(jù)文件。工作線程166在把所述部分的數(shù)據(jù)文件寫入分散式文件裝置150中。
[0046]—般而言,第一心跳服務(wù)器211或第二心跳服務(wù)器212在超過一預(yù)設(shè)的期間后未收到心跳要求,心跳服務(wù)器120會(huì)向發(fā)出報(bào)警信息。但工作線程166在寫入的過程中發(fā)生錯(cuò)誤時(shí)。工作線程166會(huì)發(fā)送報(bào)警信息給第一心跳服務(wù)器211與第二心跳服務(wù)器212。所述工作線程I66同時(shí)間也會(huì)通知其他工作線程166,要求其他工作線程166停止對(duì)分散式文件裝置150的寫入處理,藉以避免分散式文件裝置150中的數(shù)據(jù)完整性。
[0047]在此將前述各組件的運(yùn)作方式以下述步驟表示,請(qǐng)配合圖4所示:
[0048]步驟S410:由掃描模塊偵測(cè)本地目錄的數(shù)據(jù)文件的異動(dòng);
[0049]步驟S420:若本地目錄新增數(shù)據(jù)文件或修改數(shù)據(jù)文件,控制模塊創(chuàng)建數(shù)據(jù)隊(duì)列,并指派數(shù)據(jù)隊(duì)列記錄數(shù)據(jù)文件的路徑名稱;
[0050]步驟S430:由上傳模塊偵測(cè)本地目錄所異動(dòng)的數(shù)據(jù)文件的文件種類;
[0051]步驟S450:指派隊(duì)列監(jiān)控模塊;
[0052]步驟S460:由隊(duì)列監(jiān)控模塊對(duì)數(shù)據(jù)隊(duì)列進(jìn)行切分,并決定數(shù)據(jù)文件的切分片段的
數(shù)量;
[0053]步驟S470:若本地目錄的數(shù)據(jù)文件被刪除,控制模塊刪除對(duì)應(yīng)數(shù)據(jù)文件的數(shù)據(jù)隊(duì)列;
[0054]步驟S480:配置多個(gè)工作線程,工作線程從數(shù)據(jù)隊(duì)列中取得數(shù)據(jù)文件,工作線程根據(jù)切分片段的數(shù)量對(duì)數(shù)據(jù)文件進(jìn)行切分;以及
[0055]步驟S490:工作線程讀取切分片段,并依序?qū)懭敕稚⑹轿募b置中。
[0056]本地目錄161除了接收來(lái)自于客戶端的數(shù)據(jù)文件外,本地目錄161中的數(shù)據(jù)文件也可能會(huì)被修改、搬移或刪除等異動(dòng)。掃描模塊163會(huì)實(shí)時(shí)的偵測(cè)本地目錄161中的數(shù)據(jù)文件是否有異動(dòng)。當(dāng)數(shù)據(jù)文件異動(dòng)時(shí),掃描模塊163會(huì)向上傳模塊162發(fā)出數(shù)據(jù)文件異動(dòng)的訊息。
[0057]當(dāng)有新的數(shù)據(jù)文件存入本地目錄161時(shí),掃描模塊163會(huì)令控制模塊建立新的數(shù)據(jù)隊(duì)列,并將數(shù)據(jù)文件存入新的數(shù)據(jù)隊(duì)列。一般而言,數(shù)據(jù)隊(duì)列的數(shù)量限制取決于服務(wù)器的運(yùn)行能力。但若是有過多的數(shù)據(jù)文件新創(chuàng),可能會(huì)發(fā)生數(shù)據(jù)隊(duì)列堆疊的問題。一旦有過量的數(shù)據(jù)文件被創(chuàng)建,則掃描模塊163會(huì)透過控制模塊164向心跳服務(wù)器120發(fā)出心跳要求。
[0058]當(dāng)現(xiàn)有的數(shù)據(jù)文件的內(nèi)容有所異動(dòng)時(shí),掃描模塊163會(huì)將變更后的數(shù)據(jù)文件再次存入數(shù)據(jù)隊(duì)列中。若是本地目錄161刪除數(shù)據(jù)文件時(shí),則掃描模塊163會(huì)要求控制模塊164將對(duì)應(yīng)的數(shù)據(jù)文件的數(shù)據(jù)隊(duì)列進(jìn)行刪除。
[0059]上傳模塊162偵測(cè)本地目錄161所異動(dòng)的數(shù)據(jù)文件的文件種類。上傳模塊162根據(jù)文件種類是否存在,上傳模塊162要求控制模塊164創(chuàng)建新的數(shù)據(jù)隊(duì)列或把數(shù)據(jù)文件放入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。上傳模塊162接獲數(shù)據(jù)文件異動(dòng)的訊息后,上傳模塊162會(huì)重新取得數(shù)據(jù)文件的路徑名稱并將路徑名稱儲(chǔ)存至數(shù)據(jù)隊(duì)列中。對(duì)于不同的數(shù)據(jù)文件會(huì)設(shè)置唯一的數(shù)據(jù)隊(duì)列。當(dāng)本地目錄161儲(chǔ)存大量的數(shù)據(jù)文件時(shí),控制模塊164中的數(shù)據(jù)隊(duì)列的數(shù)量也會(huì)快速的成長(zhǎng)。
[0060]由于過多的數(shù)據(jù)隊(duì)列會(huì)造成過量的堆疊,會(huì)使得后續(xù)的工作線程166無(wú)法即時(shí)的處理完所述數(shù)據(jù)文件。因此本申請(qǐng)會(huì)監(jiān)控?cái)?shù)據(jù)隊(duì)列的服務(wù)量是否超過設(shè)定的壓力閥值。當(dāng)服務(wù)量超過壓力閥值時(shí),控制模塊164會(huì)向第一心跳服務(wù)器211或第二心跳服務(wù)器212發(fā)出報(bào)警要求。
[0061]接著,根據(jù)切分片段的數(shù)量產(chǎn)生相應(yīng)的工作線程166。每一個(gè)工作線程166根據(jù)各自的切分片段的起始位置與偏移量取得數(shù)據(jù)文件的部分片段,并將取得的片段寫入分散式文件裝置150中。在寫入的過程中可能會(huì)發(fā)生錯(cuò)誤,所以本申請(qǐng)當(dāng)偵測(cè)到寫入的切分片段的內(nèi)容有誤時(shí),會(huì)向第一心跳服務(wù)器211或第二心跳服務(wù)器212發(fā)出報(bào)警要求。
[0062]還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者系統(tǒng)不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者系統(tǒng)所固有的要素。在沒有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者系統(tǒng)中還存在另外的相同要素。
[0063]本領(lǐng)域技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器、CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
[0064]以上所述僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。
【權(quán)利要求】
1.一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法,其特征在于,包括以下步驟: 服務(wù)器監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng); 若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;以及 若監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
2.如權(quán)利要求1所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法,其特征在于,將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列的步驟進(jìn)一步包括:將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。
3.如權(quán)利要求1所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法,其特征在于,服務(wù)器通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。
4.如權(quán)利要求1所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新方法,其特征在于, 在所述若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,還包括:創(chuàng)建監(jiān)控該數(shù)據(jù)隊(duì)列的工作線程,用于監(jiān)控該數(shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng); 在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),所述方法還包括:刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程。
5.一種服務(wù)器中的數(shù)據(jù)隊(duì)列的更新系統(tǒng),其特征在于,包括: 內(nèi)存模塊,用于存儲(chǔ)數(shù)據(jù)文件和數(shù)據(jù)隊(duì)列; 監(jiān)聽模塊,用于監(jiān)測(cè)服務(wù)器中所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng); 隊(duì)列管理模塊,連接于所述監(jiān)聽模塊,所述隊(duì)列管理模塊用于若所述監(jiān)聽模塊監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列;以及, 若所述監(jiān)聽模塊監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),則刪除對(duì)應(yīng)所述數(shù)據(jù)文件的所述數(shù)據(jù)隊(duì)列。
6.如權(quán)利要求5所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新系統(tǒng),其特征在于,將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列時(shí),還包括:將數(shù)據(jù)文件的路徑資訊存入對(duì)應(yīng)的數(shù)據(jù)隊(duì)列中。
7.如權(quán)利要求5所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新系統(tǒng),其特征在于,所述監(jiān)聽模塊通過定時(shí)查詢的方式或者監(jiān)控文件操作指令的方式監(jiān)測(cè)所存儲(chǔ)的所有數(shù)據(jù)文件是否有所異動(dòng)。
8.如權(quán)利要求5所述的服務(wù)器中的數(shù)據(jù)隊(duì)列的更新系統(tǒng),其特征在于,所述系統(tǒng)進(jìn)一步包括:隊(duì)列監(jiān)控模塊, 所述隊(duì)列監(jiān)控模塊,用于在所述若監(jiān)測(cè)到有新增的數(shù)據(jù)文件,則創(chuàng)建數(shù)據(jù)隊(duì)列,并將所述數(shù)據(jù)文件存入相應(yīng)的數(shù)據(jù)隊(duì)列之后,創(chuàng)建監(jiān)控?cái)?shù)據(jù)隊(duì)列的工作線程,所述工作線程用于監(jiān)控該數(shù)據(jù)隊(duì)列中的數(shù)據(jù)文件的異動(dòng); 所述隊(duì)列監(jiān)控模塊,還用于在所述監(jiān)測(cè)到任一存儲(chǔ)的所述數(shù)據(jù)文件被刪除時(shí),刪除所述數(shù)據(jù)文件對(duì)應(yīng)的所述數(shù)據(jù)隊(duì)列的工作線程。
【文檔編號(hào)】H04L29/08GK103701719SQ201310742758
【公開日】2014年4月2日 申請(qǐng)日期:2013年12月27日 優(yōu)先權(quán)日:2013年12月27日
【發(fā)明者】于鳳東, 張磊, 馬一鳴 申請(qǐng)人:樂視網(wǎng)信息技術(shù)(北京)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
阿瓦提县| 霞浦县| 邮箱| 河南省| 伊春市| 罗江县| 周宁县| 孝昌县| 卓尼县| 尼木县| 新竹县| 绵竹市| 巫山县| 北安市| 博兴县| 鸡西市| 巨野县| 德昌县| 中山市| 化州市| 宝应县| 滁州市| 平阴县| 广灵县| 中江县| 介休市| 九寨沟县| 吉隆县| 新宾| 前郭尔| 沂南县| 历史| 遵化市| 淮滨县| 滨州市| 苏尼特右旗| 正阳县| 广安市| 宝山区| 镇坪县| 甘孜县|