亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

消息蓄洪方法及裝置與流程

文檔序號(hào):11582389閱讀:465來(lái)源:國(guó)知局
消息蓄洪方法及裝置與流程

本申請(qǐng)涉及計(jì)算機(jī)軟件技術(shù)領(lǐng)域,尤其涉及一種消息蓄洪方法及裝置。



背景技術(shù):

消息中間件是一個(gè)用于系統(tǒng)或組件之間、提供可靠的異步通訊、降低系統(tǒng)耦合度、提高整個(gè)系統(tǒng)的可擴(kuò)展性和可用性的一個(gè)組件,簡(jiǎn)單理解可以看作傳話人。

消息中間件包括消息總線和消息客戶端兩部分。消息總線接收從一消息客戶端發(fā)來(lái)的消息,以及將該消息發(fā)送給另一消息客戶端,另一消息客戶端接收該消息并推送給相應(yīng)的處理系統(tǒng)進(jìn)行處理。在這個(gè)過(guò)程中,發(fā)送消息的消息客戶端為該消息的生產(chǎn)者,接收該消息的消息客戶端為該消息的消費(fèi)者。

在現(xiàn)有技術(shù)中,當(dāng)消息較多消息總線處理不過(guò)來(lái)時(shí),可以通過(guò)消息蓄洪庫(kù)對(duì)處理不過(guò)來(lái)的消息進(jìn)行蓄洪,等到有能力處理時(shí)發(fā)送該消息用以消費(fèi)。具體地,消息蓄洪庫(kù)通常是由多個(gè)數(shù)據(jù)庫(kù)構(gòu)成的集群,通過(guò)按照消息相關(guān)的指定標(biāo)識(shí),在集群中分?jǐn)?shù)據(jù)庫(kù)存儲(chǔ)對(duì)應(yīng)的消息(比如,將消息的序號(hào)取模映射向集群中的某個(gè)數(shù)據(jù)庫(kù),作為存儲(chǔ)該消息的數(shù)據(jù)庫(kù)),完成對(duì)消息的蓄洪。

但是,上述現(xiàn)有技術(shù)中的消息蓄洪方式導(dǎo)致集群中的每個(gè)數(shù)據(jù)庫(kù)固定地對(duì)應(yīng)于一些待蓄洪消息,若某個(gè)數(shù)據(jù)庫(kù)不可用時(shí),將會(huì)直接影響到對(duì)該數(shù)據(jù)庫(kù)對(duì)應(yīng)的待蓄洪消息的蓄洪操作,進(jìn)而也影響到消息蓄洪庫(kù)的可用性。



技術(shù)實(shí)現(xiàn)要素:

本申請(qǐng)實(shí)施例提供風(fēng)險(xiǎn)識(shí)別方法、裝置及系統(tǒng),用以解決如下技術(shù)問(wèn)題:現(xiàn)有技術(shù)中的消息蓄洪方式導(dǎo)致集群中的每個(gè)數(shù)據(jù)庫(kù)固定地對(duì)應(yīng)于一些待蓄洪消息,若某個(gè)數(shù)據(jù)庫(kù)不可用時(shí),將會(huì)直接影響到對(duì)該數(shù)據(jù)庫(kù)對(duì)應(yīng)的待蓄洪消息的蓄洪操作,進(jìn)而也影響到消息蓄洪庫(kù)的可用性。

為解決上述技術(shù)問(wèn)題,本申請(qǐng)實(shí)施例是這樣實(shí)現(xiàn)的:

本申請(qǐng)實(shí)施例提供的一種消息蓄洪方法,包括:

獲得待蓄洪消息;

確定可存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)的集合,所述集合是通過(guò)對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到的;

通過(guò)在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,完成對(duì)所述待蓄洪消息的蓄洪。

本申請(qǐng)實(shí)施例提供的一種消息蓄洪裝置,包括:

獲得模塊,獲得待蓄洪消息;

確定模塊,確定可存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)的集合,所述集合是通過(guò)對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到的;

蓄洪模塊,通過(guò)在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,完成對(duì)所述待蓄洪消息的蓄洪。

本申請(qǐng)實(shí)施例采用的上述至少一個(gè)技術(shù)方案能夠達(dá)到以下有益效果:不再像現(xiàn)有技術(shù)中按照標(biāo)識(shí)分?jǐn)?shù)據(jù)庫(kù)蓄洪消息(每條待蓄洪消息與蓄洪該消息所要使用的數(shù)據(jù)庫(kù)是相對(duì)固定,可以預(yù)計(jì)),而是可以基于預(yù)先或?qū)崟r(shí)對(duì)各數(shù)據(jù)庫(kù)進(jìn)行的可行性檢測(cè),在經(jīng)檢測(cè)被認(rèn)為可用的各數(shù)據(jù)庫(kù)中選擇數(shù)據(jù)庫(kù)進(jìn)行消息蓄洪,這種選擇也可以是隨機(jī)不固定的。因此,可以消除或減少消息蓄洪庫(kù)的部分?jǐn)?shù)據(jù)庫(kù)不可用時(shí)對(duì)消息蓄洪的不利影響,有利于提高消息蓄洪庫(kù)的可用性。

附圖說(shuō)明

為了更清楚地說(shuō)明本申請(qǐng)實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本申請(qǐng)中記載的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1為本申請(qǐng)實(shí)施例提供的一種消息中間件的原理示意圖;

圖2為本申請(qǐng)實(shí)施例提供的一種消息蓄洪方法的流程示意圖;

圖3為本申請(qǐng)實(shí)施例提供的一種實(shí)際應(yīng)用場(chǎng)景下,數(shù)據(jù)庫(kù)的一種架構(gòu)圖;

圖4為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的一種可用數(shù)據(jù)庫(kù)集合示意圖;

圖5為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖2的一種消息蓄洪裝置的結(jié)構(gòu)示意圖。

具體實(shí)施方式

本申請(qǐng)實(shí)施例提供一種消息蓄洪方法及裝置。

為了使本技術(shù)領(lǐng)域的人員更好地理解本申請(qǐng)中的技術(shù)方案,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本申請(qǐng)保護(hù)的范圍。

需要說(shuō)明的是,上述的現(xiàn)有技術(shù)是以一定的場(chǎng)景為前提的。消息蓄洪通常通過(guò)隊(duì)列(queue)來(lái)實(shí)現(xiàn),具體地,經(jīng)常通過(guò)apachekafka來(lái)實(shí)現(xiàn)。但在所述一定的場(chǎng)景下,由于開(kāi)源協(xié)議或其他一些原因的限制,不能使用apachekafka,于是,在上述現(xiàn)有技術(shù)中,用數(shù)據(jù)庫(kù)集群當(dāng)作一個(gè)queue來(lái)實(shí)現(xiàn)消息蓄洪,進(jìn)而導(dǎo)致了上述現(xiàn)有技術(shù)中的問(wèn)題。

圖1為本申請(qǐng)實(shí)施例提供的一種消息中間件的原理示意圖。在圖1中,有a~f共六個(gè)消息客戶端,它們分別為對(duì)應(yīng)的系統(tǒng)提供消息服務(wù),當(dāng)前,a~c為消息的生產(chǎn)者,d~f為消息的消費(fèi)者。其中,a的消息通過(guò)消息總線發(fā)送給了d和e,b的消息雖然發(fā)給了消息總線但沒(méi)有客戶端消費(fèi),c的消息通過(guò)消息總線發(fā)送給了d和f。

當(dāng)消息總線接收到的消息超過(guò)其處理能力時(shí),則可以進(jìn)行消息蓄洪,等到有能力時(shí)再使消息被消費(fèi)。

下面對(duì)本申請(qǐng)的方案進(jìn)行詳細(xì)說(shuō)明。

圖2為本申請(qǐng)實(shí)施例提供的一種消息蓄洪方法的流程示意圖。從程序角度而言,該流程的執(zhí)行主體包括但不限于:數(shù)據(jù)庫(kù)的客戶端或服務(wù)端、可以連接數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)集群的軟件(比如,背景技術(shù)中的消息總線等),等等。從設(shè)備角度而言,該流程的執(zhí)行主體可以包括但不限于可搭載上述程序的以下設(shè)備:個(gè)人計(jì)算機(jī)、大中型計(jì)算機(jī)、計(jì)算機(jī)集群、手機(jī)、平板電腦、智能可穿戴設(shè)備、車(chē)機(jī),等等。

圖2中的流程可以包括以下步驟:

s201:獲得待蓄洪消息。

在本申請(qǐng)實(shí)施例中,對(duì)于背景技術(shù)中的場(chǎng)景,待蓄洪消息可以獲取自消息總線,通常為消息總線來(lái)不及處理的消息;對(duì)于存在類(lèi)似問(wèn)題的其他場(chǎng)景,比如,擁塞的消息隊(duì)列,則待蓄洪消息可以獲取自消息隊(duì)列的入口;等等。

本申請(qǐng)對(duì)待蓄洪消息具體包含什么內(nèi)容,以及具體采用何種格式并不做限定,這些可以取決于待蓄洪消息所涉及的業(yè)務(wù)。比如,待蓄洪消息可以是即時(shí)通訊業(yè)務(wù)中的離線留言消息,可以是電子商務(wù)業(yè)務(wù)中的交易明細(xì)消息,可以是監(jiān)控業(yè)務(wù)中的日志消息,等等。

s202:確定可存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)的集合,所述集合是通過(guò)是對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到的。

在本申請(qǐng)實(shí)施例中,所述集合可以有多種具體表示形式,比如,列表、枚舉類(lèi)型數(shù)據(jù)、結(jié)構(gòu)體等。

在本申請(qǐng)實(shí)施例中,可以有多個(gè)數(shù)據(jù)庫(kù)用于存儲(chǔ)待蓄洪消息,這些數(shù)據(jù)庫(kù)通常以集群的形式工作,在實(shí)際應(yīng)用中,由于種種原因,可能導(dǎo)致集群中的部分?jǐn)?shù)據(jù)庫(kù)暫時(shí)不可用,比如,機(jī)器故障、掉電、軟件異常等,從而導(dǎo)致背景技術(shù)中的問(wèn)題。

而本申請(qǐng)則可以預(yù)先得到或?qū)崟r(shí)得到一個(gè)經(jīng)檢測(cè)具有可用性的數(shù)據(jù)庫(kù)的集合,該集合是集群的一個(gè)子集。這種可用性檢測(cè)可以是定時(shí)或不定時(shí)執(zhí)行的,也即,可以執(zhí)行多次,通過(guò)可用性檢測(cè),可以在對(duì)消息蓄洪前,就將檢測(cè)時(shí)不具有可用性的數(shù)據(jù)庫(kù)確定出來(lái),不作為本次消息蓄洪所要使用的數(shù)據(jù)庫(kù),從而有利于提高消息蓄洪成功的概率,也有利于提高消息蓄洪庫(kù)的可用性。

在本申請(qǐng)實(shí)施例中,數(shù)據(jù)庫(kù)的可用性檢測(cè)具有多種具體實(shí)施方式,在不同的具體實(shí)施方式,相應(yīng)地,檢測(cè)結(jié)果的可靠性可能不同。列舉兩種檢測(cè)方式作為示例:可以針對(duì)數(shù)據(jù)庫(kù)執(zhí)行數(shù)據(jù)操作,比如,數(shù)據(jù)查詢(xún)(select)操作、數(shù)據(jù)插入(insert)操作、數(shù)據(jù)更新(upadte)操作等;可以分析數(shù)據(jù)庫(kù)最近的工作日志是否正常。

在本申請(qǐng)實(shí)施例中,步驟s202中所述的“確定集合”具體可以指:該集合已經(jīng)由執(zhí)行主體或者其他主體預(yù)先得到,在執(zhí)行步驟s202,執(zhí)行主體再確定接下來(lái)要使用的是該集合;所述的“確定集合”具體也可以指:該集合在執(zhí)行步驟s202時(shí)尚未得到,而是在執(zhí)行步驟s202中再實(shí)時(shí)地得到。前一種方式的優(yōu)點(diǎn)是有利于提高本申請(qǐng)的方案的執(zhí)行速度,后一種方式的優(yōu)點(diǎn)是可用性檢測(cè)的結(jié)果的時(shí)效性較好,有利于提高后續(xù)操作的可靠性。

s203:通過(guò)在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,完成對(duì)所述待蓄洪消息的蓄洪。

在本申請(qǐng)實(shí)施例中,在確定集合后,可以在集合中隨機(jī)選擇或者按照其他策略選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)待蓄洪消息。將待蓄洪消息在所選的數(shù)據(jù)庫(kù)中存儲(chǔ)完成也即表示對(duì)該待蓄洪消息蓄洪完成。

在具體實(shí)施時(shí),可以針對(duì)每條待蓄洪消息執(zhí)行一次圖2的流程,也可以針對(duì)一批待蓄洪消息執(zhí)行一次圖2中的流程。

通過(guò)圖2的方法,不再像現(xiàn)有技術(shù)中按照標(biāo)識(shí)分?jǐn)?shù)據(jù)庫(kù)蓄洪消息(每條待蓄洪消息與蓄洪該消息所要使用的數(shù)據(jù)庫(kù)是相對(duì)固定,可以預(yù)計(jì)),而是可以基于預(yù)先或?qū)崟r(shí)對(duì)各數(shù)據(jù)庫(kù)進(jìn)行的可行性檢測(cè),在經(jīng)檢測(cè)被認(rèn)為可用的各數(shù)據(jù)庫(kù)中選擇數(shù)據(jù)庫(kù)進(jìn)行消息蓄洪,這種選擇也可以是隨機(jī)不固定的。因此,可以消除或減少消息蓄洪庫(kù)的部分?jǐn)?shù)據(jù)庫(kù)不可用時(shí)對(duì)消息蓄洪的不利影響,有利于提高消息蓄洪庫(kù)的可用性。

基于圖2的方法,本申請(qǐng)實(shí)施例還提供了該方法的一些具體實(shí)施方案,以及擴(kuò)展方案,下面進(jìn)行說(shuō)明。

在本申請(qǐng)實(shí)施例中,對(duì)于步驟s202,可以預(yù)先或?qū)崟r(shí)地、定時(shí)或不定時(shí)地按照如下方式,對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到所述集合:對(duì)所述多個(gè)數(shù)據(jù)庫(kù)中的每個(gè)數(shù)據(jù)庫(kù)執(zhí)行數(shù)據(jù)操作,操作成功時(shí)確定該數(shù)據(jù)庫(kù)可用;獲得包含一個(gè)或多個(gè)被確定可用的數(shù)據(jù)庫(kù)的所述集合。該方式可以有多種更具體的實(shí)施方案。

例如,可以在執(zhí)行主體本地起一個(gè)線程,定時(shí)地(比如,每隔30秒)執(zhí)行以下操作:查詢(xún)消息蓄洪庫(kù)對(duì)應(yīng)的每個(gè)數(shù)據(jù)庫(kù)中的至少一張數(shù)據(jù)表,如果查詢(xún)成功,則可以認(rèn)為該數(shù)據(jù)庫(kù)當(dāng)前可用。根據(jù)各次查詢(xún)結(jié)果可以得到一張可用數(shù)據(jù)庫(kù)列表(也即,上述集合),并可以對(duì)該列表定時(shí)維護(hù)。

又例如,可以隨機(jī)從消息蓄洪庫(kù)對(duì)應(yīng)的各數(shù)據(jù)庫(kù)中選擇至少一個(gè)數(shù)據(jù)庫(kù),在選擇的數(shù)據(jù)庫(kù)中分別更新一條數(shù)據(jù)記錄,如果更新成功,則可以認(rèn)為該數(shù)據(jù)庫(kù)當(dāng)前可用,并將該數(shù)據(jù)庫(kù)加入一張可用數(shù)據(jù)庫(kù)列表中,并可以對(duì)該列表定時(shí)維護(hù)。

在本申請(qǐng)實(shí)施例中,對(duì)于步驟s203,所述在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,具體可以包括:在確定的所述集合中,隨機(jī)選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息。此處,隨機(jī)選擇的優(yōu)點(diǎn)的是:邏輯簡(jiǎn)單,且在待蓄洪消息數(shù)量較多時(shí),有利于使各可用數(shù)據(jù)庫(kù)的負(fù)載逐漸趨向均衡。

當(dāng)然,前面也有提到,也可以采用隨機(jī)以外的其他策略選擇數(shù)據(jù)庫(kù),比如,可以輪流向集合中的各數(shù)據(jù)庫(kù)中存儲(chǔ)待蓄洪消息,等等。

在本申請(qǐng)實(shí)施例中,根據(jù)前面的說(shuō)明可知,雖然在消息蓄洪前通過(guò)對(duì)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)確定了集合,但是,這種可用性檢測(cè)通常都是預(yù)先執(zhí)行的,其結(jié)果的時(shí)效性未必符合實(shí)際需求。也即,雖然在剛得到集合時(shí),集合中的數(shù)據(jù)庫(kù)是可用的,但在執(zhí)行步驟s203時(shí),集合中的數(shù)據(jù)庫(kù)未必仍然可用的,這種情況的發(fā)生概率往往還會(huì)隨這兩個(gè)時(shí)間點(diǎn)間隔變遠(yuǎn)而增大。

針對(duì)這種情況,本申請(qǐng)的方案也提供了相應(yīng)的應(yīng)對(duì)措施。比如,對(duì)于步驟s203,在選擇至少一個(gè)數(shù)據(jù)庫(kù)后,存儲(chǔ)所述待蓄洪消息前,還可以執(zhí)行:再次檢測(cè)所選擇的數(shù)據(jù)庫(kù)是否可用;若不可用,將其從所述集合中剔除,并在剔除后的所述集合中重新選擇數(shù)據(jù)庫(kù);從而可以進(jìn)一步地保證后續(xù)所選擇數(shù)據(jù)庫(kù)的可用性。為了防止混淆,將這次檢測(cè)稱(chēng)為第二次可用性檢測(cè),而將步驟s202中所述的可用性檢測(cè)稱(chēng)為第一次可用性檢測(cè)。

第一次可用性檢測(cè)與第二次可用性檢測(cè)采用的具體實(shí)施方式可以相同,也可以不同。在實(shí)際應(yīng)用中,第一次可用性檢測(cè)通常是預(yù)先執(zhí)行的,而第二次可用性檢測(cè)是在執(zhí)行步驟s203時(shí)實(shí)時(shí)執(zhí)行的,因此,在執(zhí)行效率和速度方面,對(duì)第二次可用性檢測(cè)的要求相對(duì)更高,則第二次可用性檢測(cè)相比于第一次可用性檢測(cè)往往可以簡(jiǎn)單一些,以便于更高效更快速地執(zhí)行。比如,若第一次可用檢測(cè)需要對(duì)數(shù)據(jù)庫(kù)中的多張表分別進(jìn)行至少一次查詢(xún)操作,則第二次可用檢測(cè)可以只對(duì)數(shù)據(jù)庫(kù)中的任一張表進(jìn)行一次查詢(xún)操作。

另外,若在步驟s203中選擇了多個(gè)數(shù)據(jù)庫(kù),且通過(guò)第二次可用檢測(cè),檢測(cè)出這多個(gè)數(shù)據(jù)庫(kù)只有部分?jǐn)?shù)據(jù)庫(kù)不可用,并非全不可用,則也可以不重新選擇數(shù)據(jù)庫(kù),而是在所選擇的可用的數(shù)據(jù)庫(kù)中存儲(chǔ)待蓄洪消息。

在本申請(qǐng)實(shí)施例中,本申請(qǐng)的方案還提供了一種實(shí)際場(chǎng)景下,進(jìn)行消息蓄洪的一些技術(shù)細(xì)節(jié),這些技術(shù)細(xì)節(jié)有利于提高消息蓄洪庫(kù)的可用性。下面進(jìn)行說(shuō)明。

在該實(shí)際應(yīng)用場(chǎng)景下,上述的數(shù)據(jù)庫(kù)為邏輯庫(kù),每個(gè)邏輯庫(kù)由至少一主一備兩個(gè)物理庫(kù)支持。

為了便于理解,對(duì)“邏輯庫(kù)”、“物理庫(kù)”這兩個(gè)概念進(jìn)行解釋。以計(jì)算機(jī)系統(tǒng)作為類(lèi)比,“邏輯庫(kù)”可類(lèi)比于計(jì)算機(jī)系統(tǒng)中的文件系統(tǒng),一般為用戶提供有相應(yīng)的可視界面,“物理庫(kù)”可類(lèi)比于存儲(chǔ)該文件系統(tǒng)的數(shù)據(jù)物理區(qū)域(通常是硬盤(pán)上的某個(gè)分區(qū)),“物理庫(kù)”為“邏輯庫(kù)”提供底層硬件支持。為了保障邏輯庫(kù)的可靠性,其對(duì)應(yīng)的主備物理庫(kù)一般在不同的機(jī)器上,如此,即使其中一臺(tái)機(jī)器宕機(jī),邏輯庫(kù)仍然可能正常工作。

進(jìn)一步地,對(duì)于步驟s203,在選擇了數(shù)據(jù)庫(kù)后,所述存儲(chǔ)所述待蓄洪消息,具體可以包括:將所述待蓄洪消息存儲(chǔ)在支持該數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)中。其中,將待蓄洪消息存儲(chǔ)在備物理庫(kù)可以由執(zhí)行主體間接導(dǎo)致的,具體地,執(zhí)行主體“將待蓄洪消息存儲(chǔ)在主物理庫(kù)”間接導(dǎo)致“主物理庫(kù)將待蓄洪消息同步存儲(chǔ)至備物理庫(kù)中”。

圖3為本申請(qǐng)實(shí)施例提供的該實(shí)際應(yīng)用場(chǎng)景下,數(shù)據(jù)庫(kù)的一種架構(gòu)圖。在圖3中,示出了兩個(gè)數(shù)據(jù)庫(kù)(邏輯庫(kù)),實(shí)際上也可能有更多的邏輯庫(kù)。每個(gè)邏輯庫(kù)由一主一備兩個(gè)物理庫(kù)支持,主備之間可以相互同步。在本申請(qǐng)實(shí)施例中,應(yīng)用程序具體可以是圖2中流程的執(zhí)行主體。

在本申請(qǐng)實(shí)施例中,為盡量保證數(shù)據(jù)庫(kù)的可靠性,當(dāng)確定任一數(shù)據(jù)庫(kù)的主物理庫(kù)或備物理庫(kù)不可用時(shí)(此時(shí),主備功能實(shí)際已經(jīng)失效),可以認(rèn)為該數(shù)據(jù)庫(kù)不可用(實(shí)際上該數(shù)據(jù)庫(kù)可用,只是可靠性已經(jīng)大打折扣,不如主備功能正常時(shí)的預(yù)期),若該數(shù)據(jù)庫(kù)尚在集合中,則可以將其從集合中剔除。以下相關(guān)的實(shí)施例主要基于這樣的前提進(jìn)行說(shuō)明。

圖4為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖3的一種可用數(shù)據(jù)庫(kù)集合示意圖。在圖4中,集合的具體表現(xiàn)形式是列表,集合中包含了多個(gè)經(jīng)過(guò)第一次可用性檢測(cè)的數(shù)據(jù)庫(kù),每個(gè)數(shù)據(jù)庫(kù)分別由一主一備兩個(gè)物理庫(kù)支持,圖4中只示出了數(shù)據(jù)庫(kù)1的主物理庫(kù)和備物理庫(kù),其他幾個(gè)數(shù)據(jù)庫(kù)的省略未示出。當(dāng)集合中任一個(gè)物理庫(kù)被認(rèn)為不可用時(shí),可以將該物理庫(kù)所支持的數(shù)據(jù)庫(kù)從集合中剔除。

在上述前提下,自然地,可以當(dāng)待蓄洪消息在該數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)中均存儲(chǔ)成功時(shí),才認(rèn)為待蓄洪消息蓄洪成功。

進(jìn)一步地,當(dāng)所述待蓄洪消息在支持該數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)兩者中的任一物理庫(kù)中存儲(chǔ)失敗,且在所述兩者中另一物理庫(kù)中存儲(chǔ)成功時(shí)(此時(shí),待蓄洪消息被認(rèn)為在該數(shù)據(jù)庫(kù)中蓄洪失敗),還可以執(zhí)行:在所述集合中,選擇另一數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息;根據(jù)在所述另一數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息的結(jié)果,對(duì)所述另一物理庫(kù)中存儲(chǔ)成功的所述待蓄洪消息進(jìn)行處理。更具體地,若在所述另一數(shù)據(jù)庫(kù)中存儲(chǔ)成功,則可以刪除在所述另一物理庫(kù)中存儲(chǔ)成功的待蓄洪消息,以避免后續(xù)重復(fù)消費(fèi)。

在本申請(qǐng)實(shí)施例中,對(duì)于已蓄洪的消息,在消息總線有能力處理時(shí)隨時(shí)有可能處理,也即,已蓄洪的消息后續(xù)將會(huì)被消費(fèi)。所述的“消費(fèi)”可以包括:已蓄洪的消息被從消息蓄洪庫(kù)中讀取出來(lái),被發(fā)送給目標(biāo)消息客戶端。

進(jìn)一步地,對(duì)于已消費(fèi)的消息,可以將其從數(shù)據(jù)庫(kù)中刪除,也可以將其狀態(tài)標(biāo)記為“已消費(fèi)狀態(tài)”暫不刪除,如此,可以避免重復(fù)消費(fèi)。

在實(shí)際應(yīng)用中,無(wú)論在要消費(fèi)時(shí)讀取消息,還是在消費(fèi)后標(biāo)記已消費(fèi)狀態(tài),都有可能執(zhí)行失敗,這些不穩(wěn)定因素帶來(lái)了一些麻煩,本申請(qǐng)的方案針對(duì)此也提供了相應(yīng)的應(yīng)對(duì)措施,有利于提高消息蓄洪及后續(xù)消費(fèi)的可靠性,下面具體說(shuō)明。

在本申請(qǐng)實(shí)施例中,對(duì)于步驟s203,所述完成對(duì)所述待蓄洪消息的蓄洪后,還可以執(zhí)行:在要消費(fèi)已蓄洪的所述待蓄洪消息時(shí),從存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)中讀取所述待蓄洪消息,以用于消費(fèi);若讀取失敗,重試或者讀取其他數(shù)據(jù)庫(kù)中其他已蓄洪的消息。

進(jìn)一步地,所述讀取所述待蓄洪消息后(讀取成功后),還可以執(zhí)行:在所述待蓄洪消息被消費(fèi)后,將支持所述數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)中存儲(chǔ)的所述待蓄洪消息的狀態(tài)標(biāo)記為已消費(fèi)狀態(tài);

若確定所述主物理庫(kù)和備物理庫(kù)均標(biāo)記失敗(可以由于物理庫(kù)不可用,或標(biāo)記相關(guān)邏輯執(zhí)行錯(cuò)誤等原因?qū)е?,執(zhí)行用于防止所述待蓄洪消息被重復(fù)消費(fèi)的預(yù)定措施;比如,預(yù)定措施可以是重試標(biāo)記直至成功,或者刪除所述主物理庫(kù)和備物理庫(kù)中保存的該待蓄洪消息,等等;

若確定所述主物理庫(kù)和備物理庫(kù)中有一物理庫(kù)標(biāo)記失敗,另一物理庫(kù)標(biāo)記成功,不執(zhí)行所述預(yù)定措施;需要說(shuō)明的是,這種情況下不執(zhí)行預(yù)定措施通常是前提的,即:確定所述集合中其他數(shù)據(jù)庫(kù)中,不存在尚未被標(biāo)記已消費(fèi)的所述待蓄洪消息。而若確定存在,則可以認(rèn)為該待蓄洪消息已消費(fèi)過(guò),無(wú)需重復(fù)消費(fèi),可以將其狀態(tài)標(biāo)記為已消費(fèi)狀態(tài)。

上面對(duì)本申請(qǐng)實(shí)施例提供的消息蓄洪方法進(jìn)行了說(shuō)明,基于同樣的發(fā)明思路,本申請(qǐng)實(shí)施例還提供了對(duì)應(yīng)的裝置,如圖5所示。

圖5為本申請(qǐng)實(shí)施例提供的對(duì)應(yīng)于圖2的一種消息蓄洪裝置的結(jié)構(gòu)示意圖,虛線表示可選的模塊,所述裝置包括:

獲得模塊501,獲得待蓄洪消息;

確定模塊502,確定可存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)的集合,所述集合是通過(guò)是對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到的;

蓄洪模塊503,通過(guò)在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,完成對(duì)所述待蓄洪消息的蓄洪。

可選地,所述裝置還包括:

檢測(cè)模塊504,通過(guò)對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到所述集合;具體地,所述檢測(cè)模塊504按照如下方式,對(duì)多個(gè)數(shù)據(jù)庫(kù)進(jìn)行可用性檢測(cè)得到所述集合:

定時(shí)對(duì)所述多個(gè)數(shù)據(jù)庫(kù)中的每個(gè)數(shù)據(jù)庫(kù)執(zhí)行數(shù)據(jù)操作,操作成功時(shí)確定該數(shù)據(jù)庫(kù)可用;

獲得包含一個(gè)或多個(gè)被確定可用的數(shù)據(jù)庫(kù)的所述集合。

可選地,所述數(shù)據(jù)操作包括數(shù)據(jù)查詢(xún)操作。

可選地,所述蓄洪模塊503在確定的所述集合中,選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,具體包括:

所述蓄洪模塊503在確定的所述集合中,隨機(jī)選擇至少一個(gè)數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息。

可選地,所述裝置還包括:

再檢測(cè)模塊505,在所述蓄洪模塊503選擇至少一個(gè)數(shù)據(jù)庫(kù)后存儲(chǔ)所述待蓄洪消息前,再次檢測(cè)所選擇的數(shù)據(jù)庫(kù)是否可用;若不可用,將其從所述集合中剔除,并在剔除后的所述集合中重新選擇數(shù)據(jù)庫(kù)。

可選地,所述數(shù)據(jù)庫(kù)為邏輯庫(kù),每個(gè)所述邏輯庫(kù)由至少一主一備兩個(gè)物理庫(kù)支持;

所述蓄洪模塊503在選擇了數(shù)據(jù)庫(kù)后,所述存儲(chǔ)所述待蓄洪消息,具體包括:

所述蓄洪模塊503將所述待蓄洪消息存儲(chǔ)在支持該數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)中。

可選地,所述確定模塊502確定可存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)的集合后,當(dāng)確定所述集合中的任一數(shù)據(jù)庫(kù)的主物理庫(kù)或備物理庫(kù)不可用時(shí),將該數(shù)據(jù)庫(kù)確定為不可用并從所述集合中剔除。

可選地,所述蓄洪模塊503當(dāng)所述待蓄洪消息在支持該數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)兩者中的任一物理庫(kù)中存儲(chǔ)失敗,且在所述兩者中的另一物理庫(kù)中存儲(chǔ)成功時(shí),在所述集合中,選擇另一數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息,根據(jù)在所述另一數(shù)據(jù)庫(kù)存儲(chǔ)所述待蓄洪消息的結(jié)果,對(duì)所述另一物理庫(kù)中存儲(chǔ)成功的所述待蓄洪消息進(jìn)行處理。

可選地,所述裝置還包括:

消費(fèi)模塊506,在所述蓄洪模塊503完成對(duì)所述待蓄洪消息的蓄洪后,在要消費(fèi)已蓄洪的所述待蓄洪消息時(shí),從存儲(chǔ)所述待蓄洪消息的數(shù)據(jù)庫(kù)中讀取所述待蓄洪消息,以用于消費(fèi);若讀取失敗,重試或者讀取其他數(shù)據(jù)庫(kù)中其他已蓄洪的消息。

可選地,所述消費(fèi)模塊506讀取所述待蓄洪消息后,且在所述待蓄洪消息被消費(fèi)后,將支持所述數(shù)據(jù)庫(kù)的主物理庫(kù)和備物理庫(kù)中存儲(chǔ)的所述待蓄洪消息的狀態(tài)標(biāo)記為已消費(fèi)狀態(tài);若確定所述主物理庫(kù)和備物理庫(kù)均標(biāo)記失敗,執(zhí)行用于防止所述待蓄洪消息被重復(fù)消費(fèi)的預(yù)定措施;若確定所述主物理庫(kù)和備物理庫(kù)中有一物理庫(kù)標(biāo)記失敗,另一數(shù)據(jù)庫(kù)標(biāo)記成功,不執(zhí)行所述預(yù)定措施。

可選地,所述消費(fèi)模塊506若確定所述主物理庫(kù)和備物理庫(kù)中有一物理庫(kù)標(biāo)記失敗,另一數(shù)據(jù)庫(kù)標(biāo)記成功,在所述不執(zhí)行所述預(yù)定措施前,確定所述集合中其他數(shù)據(jù)庫(kù)中,不存在尚未被標(biāo)記已消費(fèi)的所述待蓄洪消息。

本申請(qǐng)實(shí)施例提供的裝置與方法是一一對(duì)應(yīng)的,因此,裝置也具有與其對(duì)應(yīng)的方法類(lèi)似的有益技術(shù)效果,由于上面已經(jīng)對(duì)方法的有益技術(shù)效果進(jìn)行了詳細(xì)說(shuō)明,因此,這里不再贅述對(duì)應(yīng)裝置的有益技術(shù)效果。

在20世紀(jì)90年代,對(duì)于一個(gè)技術(shù)的改進(jìn)可以很明顯地區(qū)分是硬件上的改進(jìn)(例如,對(duì)二極管、晶體管、開(kāi)關(guān)等電路結(jié)構(gòu)的改進(jìn))還是軟件上的改進(jìn)(對(duì)于方法流程的改進(jìn))。然而,隨著技術(shù)的發(fā)展,當(dāng)今的很多方法流程的改進(jìn)已經(jīng)可以視為硬件電路結(jié)構(gòu)的直接改進(jìn)。設(shè)計(jì)人員幾乎都通過(guò)將改進(jìn)的方法流程編程到硬件電路中來(lái)得到相應(yīng)的硬件電路結(jié)構(gòu)。因此,不能說(shuō)一個(gè)方法流程的改進(jìn)就不能用硬件實(shí)體模塊來(lái)實(shí)現(xiàn)。例如,可編程邏輯器件(programmablelogicdevice,pld)(例如現(xiàn)場(chǎng)可編程門(mén)陣列(fieldprogrammablegatearray,fpga))就是這樣一種集成電路,其邏輯功能由用戶對(duì)器件編程來(lái)確定。由設(shè)計(jì)人員自行編程來(lái)把一個(gè)數(shù)字系統(tǒng)“集成”在一片pld上,而不需要請(qǐng)芯片制造廠商來(lái)設(shè)計(jì)和制作專(zhuān)用的集成電路芯片。而且,如今,取代手工地制作集成電路芯片,這種編程也多半改用“邏輯編譯器(logiccompiler)”軟件來(lái)實(shí)現(xiàn),它與程序開(kāi)發(fā)撰寫(xiě)時(shí)所用的軟件編譯器相類(lèi)似,而要編譯之前的原始代碼也得用特定的編程語(yǔ)言來(lái)撰寫(xiě),此稱(chēng)之為硬件描述語(yǔ)言(hardwaredescriptionlanguage,hdl),而hdl也并非僅有一種,而是有許多種,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)與verilog。本領(lǐng)域技術(shù)人員也應(yīng)該清楚,只需要將方法流程用上述幾種硬件描述語(yǔ)言稍作邏輯編程并編程到集成電路中,就可以很容易得到實(shí)現(xiàn)該邏輯方法流程的硬件電路。

控制器可以按任何適當(dāng)?shù)姆绞綄?shí)現(xiàn),例如,控制器可以采取例如微處理器或處理器以及存儲(chǔ)可由該(微)處理器執(zhí)行的計(jì)算機(jī)可讀程序代碼(例如軟件或固件)的計(jì)算機(jī)可讀介質(zhì)、邏輯門(mén)、開(kāi)關(guān)、專(zhuān)用集成電路(applicationspecificintegratedcircuit,asic)、可編程邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存儲(chǔ)器控制器還可以被實(shí)現(xiàn)為存儲(chǔ)器的控制邏輯的一部分。本領(lǐng)域技術(shù)人員也知道,除了以純計(jì)算機(jī)可讀程序代碼方式實(shí)現(xiàn)控制器以外,完全可以通過(guò)將方法步驟進(jìn)行邏輯編程來(lái)使得控制器以邏輯門(mén)、開(kāi)關(guān)、專(zhuān)用集成電路、可編程邏輯控制器和嵌入微控制器等的形式來(lái)實(shí)現(xiàn)相同功能。因此這種控制器可以被認(rèn)為是一種硬件部件,而對(duì)其內(nèi)包括的用于實(shí)現(xiàn)各種功能的裝置也可以視為硬件部件內(nèi)的結(jié)構(gòu)。或者甚至,可以將用于實(shí)現(xiàn)各種功能的裝置視為既可以是實(shí)現(xiàn)方法的軟件模塊又可以是硬件部件內(nèi)的結(jié)構(gòu)。

上述實(shí)施例闡明的系統(tǒng)、裝置、模塊或單元,具體可以由計(jì)算機(jī)芯片或?qū)嶓w實(shí)現(xiàn),或者由具有某種功能的產(chǎn)品來(lái)實(shí)現(xiàn)。一種典型的實(shí)現(xiàn)設(shè)備為計(jì)算機(jī)。具體的,計(jì)算機(jī)例如可以為個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、蜂窩電話、相機(jī)電話、智能電話、個(gè)人數(shù)字助理、媒體播放器、導(dǎo)航設(shè)備、電子郵件設(shè)備、游戲控制臺(tái)、平板計(jì)算機(jī)、可穿戴設(shè)備或者這些設(shè)備中的任何設(shè)備的組合。

為了描述的方便,描述以上裝置時(shí)以功能分為各種單元分別描述。當(dāng)然,在實(shí)施本申請(qǐng)時(shí)可以把各單元的功能在同一個(gè)或多個(gè)軟件和/或硬件中實(shí)現(xiàn)。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。

本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專(zhuān)用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。

這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。

這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。

在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(cpu)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。

內(nèi)存可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(ram)和/或非易失性?xún)?nèi)存等形式,如只讀存儲(chǔ)器(rom)或閃存(flashram)。內(nèi)存是計(jì)算機(jī)可讀介質(zhì)的示例。

計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機(jī)存取存儲(chǔ)器(sram)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dram)、其他類(lèi)型的隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、電可擦除可編程只讀存儲(chǔ)器(eeprom)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤(pán)只讀存儲(chǔ)器(cd-rom)、數(shù)字多功能光盤(pán)(dvd)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤(pán)存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitorymedia),如調(diào)制的數(shù)據(jù)信號(hào)和載波。

還需要說(shuō)明的是,術(shù)語(yǔ)“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過(guò)程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒(méi)有明確列出的其他要素,或者是還包括為這種過(guò)程、方法、商品或者設(shè)備所固有的要素。在沒(méi)有更多限制的情況下,由語(yǔ)句“包括一個(gè)……”限定的要素,并不排除在包括所述要素的過(guò)程、方法、商品或者設(shè)備中還存在另外的相同要素。

本領(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ì)(包括但不限于磁盤(pán)存儲(chǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。

本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類(lèi)型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過(guò)通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來(lái)執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。

本說(shuō)明書(shū)中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見(jiàn)即可,每個(gè)實(shí)施例重點(diǎn)說(shuō)明的都是與其他實(shí)施例的不同之處。尤其,對(duì)于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡(jiǎn)單,相關(guān)之處參見(jiàn)方法實(shí)施例的部分說(shuō)明即可。

以上所述僅為本申請(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)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1