本申請涉及信息
技術(shù)領(lǐng)域:
,尤其涉及一種基于分布式環(huán)境的信息發(fā)送方法及裝置。
背景技術(shù):
:隨著信息化社會的發(fā)展,人們越來越習(xí)慣于使用網(wǎng)絡(luò)來進(jìn)行業(yè)務(wù),使得通過網(wǎng)絡(luò)進(jìn)行的業(yè)務(wù)的數(shù)量在不斷增加。而傳統(tǒng)技術(shù)中,采用單一的設(shè)備或者程序進(jìn)行業(yè)務(wù)處理的方式,在現(xiàn)今業(yè)務(wù)量的不斷增加和設(shè)備硬件的性能限制的環(huán)境下,越發(fā)無法勝任當(dāng)前網(wǎng)絡(luò)業(yè)務(wù)處理的要求。于是,在現(xiàn)有技術(shù)中,人們開始利用分布式環(huán)境來處理網(wǎng)絡(luò)業(yè)務(wù),即,由多臺服務(wù)器組成分布式系統(tǒng),動態(tài)分配業(yè)務(wù)至運(yùn)行壓力較小的服務(wù)器上,使得該分布式系統(tǒng)可以執(zhí)行大量的業(yè)務(wù),而不會受到服務(wù)器的設(shè)備硬件性能的限制。在現(xiàn)有技術(shù)中,當(dāng)使用分布式系統(tǒng)進(jìn)行信息發(fā)送時,首先要確定一個負(fù)載較小的服務(wù)器,該服務(wù)器從保存待發(fā)送信息的數(shù)據(jù)庫中確定各未發(fā)送信息以及各發(fā)送失敗的信息,作為待發(fā)送信息,將各待發(fā)送信息按照預(yù)先設(shè)定的規(guī)則排隊,作為待發(fā)送信息隊列,之后該分布式系統(tǒng)即可按順序逐一發(fā)送各待發(fā)送信息。由于考慮到存在待發(fā)送信息發(fā)送失敗或者發(fā)送后沒有接收到響應(yīng)的情況(即,出現(xiàn)異常信息),所以為了使各異常信息可以快速的被重新發(fā)送,現(xiàn)有技術(shù)中,當(dāng)各待發(fā)送信息的發(fā)送時間達(dá)到閾值或者發(fā)送數(shù)量達(dá)到閾值時,分布式系統(tǒng)會再次重新確定一個負(fù)載較小的服務(wù)器,再次執(zhí)行待發(fā)送信息的發(fā)送流程。但是,當(dāng)該分布式系統(tǒng)確定服務(wù)器再次執(zhí)行待發(fā)送信息的發(fā)送流程時,由 于待發(fā)送信息隊列中的各待發(fā)送信息可能還未全部發(fā)送完畢,所以在保存待發(fā)送信息的數(shù)據(jù)庫中這種已經(jīng)排隊等待發(fā)送、但是尚未發(fā)送的信息也會顯示未發(fā)送的狀態(tài),導(dǎo)致再次確定各待發(fā)送信息時,這類信息會被再次加入該待發(fā)送信息隊列中,這就使的該待發(fā)送信息隊列中存在重復(fù)的待發(fā)送信息。例如,分布式系統(tǒng)確定由第一服務(wù)器執(zhí)行信息發(fā)送流程,假設(shè)該第一服務(wù)器通過數(shù)據(jù)庫中各信息的狀態(tài),確定各待發(fā)送信息,并建立待發(fā)送信息隊列中包含100條待發(fā)送信息。進(jìn)一步假設(shè),當(dāng)該分布式系統(tǒng)切換至第二服務(wù)器繼續(xù)執(zhí)行信息發(fā)送流程時,該待發(fā)送信息隊列中尚有50條未發(fā)送的待發(fā)送信息,并且已發(fā)送的50條待發(fā)送信息中,有25條待發(fā)送信息發(fā)送失敗,需要重新發(fā)送。但是,由于在該待發(fā)送信息隊列中尚未發(fā)送的50條待發(fā)送信息,在數(shù)據(jù)庫中的狀態(tài)仍然是未發(fā)送,所以,該第二服務(wù)器在確定待發(fā)送信息時,仍然會將這50條尚未發(fā)送的待發(fā)送信息確定為需要添加到待發(fā)送信息隊列中的信息,于是,當(dāng)該第二服務(wù)器確定當(dāng)前待發(fā)送信息隊列后,該待發(fā)送信息隊列中會存在50個重復(fù)的待發(fā)送信息(即此時該待發(fā)送信息隊列中包含:50個尚未發(fā)送的待發(fā)送信息、確定需要重新發(fā)送的25個待發(fā)送信息以及被重復(fù)加入該待發(fā)送信息隊列的50條待發(fā)送信息,一共125條待發(fā)送信息),這就使得信息發(fā)送的效率大大降低。進(jìn)一步,若在該第二服務(wù)器確定待發(fā)送信息時,數(shù)據(jù)庫中出現(xiàn)了新的待發(fā)送信息,則由于待發(fā)送信息隊列中存在待發(fā)送信息的重復(fù),該新的待發(fā)送信息只有等待前面125條待發(fā)送信息均被發(fā)送完畢后,才會被發(fā)送。這就使得,信息發(fā)送存在被積壓,不能在短時內(nèi)發(fā)送的問題,同樣也使得信息發(fā)送的效率降低??梢姡诂F(xiàn)有技術(shù)中采用分布式系統(tǒng)發(fā)送信息時,若待發(fā)送信息數(shù)量較多,待發(fā)送信息隊列中存在的重復(fù)待發(fā)送信息就會越積越多,導(dǎo)致分布式環(huán)境下,發(fā)送信息的效率降低,且消耗網(wǎng)絡(luò)資源增加。技術(shù)實現(xiàn)要素:本申請實施例提供一種基于分布式環(huán)境的信息發(fā)送方法及裝置,用以解決現(xiàn)有技術(shù)中信息發(fā)送容易存在積壓,發(fā)送效率低的問題。本申請實施例提供的一種基于分布式環(huán)境的信息發(fā)送方法,包括:分布式系統(tǒng)中的第一服務(wù)器確定各待發(fā)送信息的標(biāo)識;所述第一服務(wù)器將所述標(biāo)識發(fā)送到緩存區(qū)存儲;所述第一服務(wù)器根據(jù)緩存區(qū)中存儲的標(biāo)識,發(fā)送各待發(fā)送信息,其中,每發(fā)送一個待發(fā)送信息,則刪除所述緩存區(qū)中發(fā)送的待發(fā)送信息對應(yīng)的標(biāo)識;當(dāng)切換到所述分布式系統(tǒng)中的第二服務(wù)器發(fā)送信息時,所述第二服務(wù)器確定各待發(fā)送信息的標(biāo)識;所述第二服務(wù)器將所述第二服務(wù)器自身確定的標(biāo)識添加到緩存區(qū)中,并將所述緩存區(qū)中保存的標(biāo)識進(jìn)行去重處理;所述第二服務(wù)器根據(jù)緩存區(qū)中去重處理后的標(biāo)識,發(fā)送各待發(fā)送信息。本申請實施例提供的一種基于分布式環(huán)境的信息發(fā)送裝置,包括:標(biāo)識模塊,用于確定各待發(fā)送信息的標(biāo)識;緩存去重模塊,用于將所述標(biāo)識發(fā)送到緩存區(qū)存儲,并將所述緩存區(qū)中保存的標(biāo)識進(jìn)行去重處理;發(fā)送模塊,用于根據(jù)緩存區(qū)中存儲的標(biāo)識,發(fā)送各待發(fā)送信息,其中,每發(fā)送一個待發(fā)送信息,則刪除所述緩存區(qū)中發(fā)送的待發(fā)送信息對應(yīng)的標(biāo)識。本申請實施例提供一種基于分布式環(huán)境的信息發(fā)送方法及裝置,該方法中,第一服務(wù)器確定各待發(fā)送信息的標(biāo)識,將各標(biāo)識發(fā)送至緩存區(qū)中存儲,再根據(jù)緩存區(qū)中的標(biāo)識逐一發(fā)送各待發(fā)送信息,且每發(fā)送一條待發(fā)送信息便刪除緩存區(qū)中相應(yīng)的標(biāo)識,當(dāng)切換至第二服務(wù)器發(fā)送信息時,第二服務(wù)器重新確定各待發(fā)送信息的標(biāo)識,再將重新確定的各待發(fā)送的信息的標(biāo)識發(fā)送至緩存區(qū),并對該緩存區(qū)中的標(biāo)識進(jìn)行去重處理,最后再根據(jù)緩存區(qū)中去重后的標(biāo)識逐一 發(fā)送各待發(fā)送信息。通過上述方法,當(dāng)切換服務(wù)器發(fā)送信息時,可以通過對緩存區(qū)中存儲的標(biāo)識進(jìn)行去重處理,避免重復(fù)發(fā)送信息、減少待發(fā)送信息等待發(fā)送的時間,提高信息發(fā)送的效率。附圖說明此處所說明的附圖用來提供對本申請的進(jìn)一步理解,構(gòu)成本申請的一部分,本申請的示意性實施例及其說明用于解釋本申請,并不構(gòu)成對本申請的不當(dāng)限定。在附圖中:圖1為本申請實施例提供的基于分布式環(huán)境的信息發(fā)送過程;圖2為本申請實施例提供的一種基于分布式環(huán)境的信息發(fā)送裝置的結(jié)構(gòu)示意圖。具體實施方式在本申請實施例中,分布式系統(tǒng)中用于發(fā)送信息的服務(wù)器,先確定各待發(fā)送信息的標(biāo)識,并將該標(biāo)識發(fā)送至緩存區(qū)中,之后在根據(jù)標(biāo)識發(fā)送各待發(fā)送信息時,每發(fā)送一條待發(fā)送信息便刪除該緩存區(qū)中相應(yīng)的標(biāo)識,使得緩存區(qū)中存儲的標(biāo)識都是尚未發(fā)送過的待發(fā)送信息。當(dāng)分布式系統(tǒng)切換服務(wù)器繼續(xù)發(fā)送信息時,重新確定的服務(wù)器會再次確定需要發(fā)送的各待發(fā)送信息,并且同樣確定當(dāng)前各待發(fā)送信息的標(biāo)識,在將該再次確定的標(biāo)識發(fā)送至該緩存區(qū)后,對該緩存區(qū)中的各標(biāo)識進(jìn)行去重處理,使得該緩存區(qū)中不存在重復(fù)的標(biāo)識,最后根據(jù)去重后的標(biāo)識發(fā)送各待發(fā)送信息。可見本申請所述的方法,可以有效地避免待發(fā)送信息重復(fù)發(fā)送的情況,使得信息發(fā)送被延后的可能減少,提高了信息發(fā)送效率。為使本申請的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本申請具體實施例及相應(yīng)的附圖對本申請技術(shù)方案進(jìn)行清楚、完整地描述。顯然,所描述的實施例僅是本申請一部分實施例,而不是全部的實施例。基于本申請中的實施 例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本申請保護(hù)的范圍。圖1為本申請實施例提供的基于分布式環(huán)境的信息發(fā)送過程,具體包括以下步驟:s101:分布式系統(tǒng)中的第一服務(wù)器確定各待發(fā)送信息的標(biāo)識。在本申請實施例中,由于是基于分布式系統(tǒng)的信息發(fā)送過程,所以該分布式系統(tǒng)首先要確定一個用于信息發(fā)送過程的服務(wù)器。通常情況下,該分布式系統(tǒng)為了保證任務(wù)執(zhí)行的效率,在啟動一個任務(wù)(如,本申請中所述的信息發(fā)送過程便可視為一個任務(wù))時,會選擇當(dāng)前運(yùn)行壓力較小的服務(wù)器執(zhí)行該任務(wù)。于是,在本身請中所述的第一服務(wù)器便是指該分布式系統(tǒng)選擇的當(dāng)前運(yùn)行壓力較小的、用于發(fā)送各待發(fā)送信息的服務(wù)器。另外,在本申請中所述的待發(fā)送信息可以是查詢信息,具體可以是向銀行發(fā)送的對提現(xiàn)請求的結(jié)果進(jìn)行查詢的信息,本申請下面僅以待發(fā)送信息為向銀行發(fā)送的對提現(xiàn)請求的結(jié)果進(jìn)行查詢的信息為例進(jìn)行說明。當(dāng)該第一服務(wù)器被選擇用于執(zhí)行信息發(fā)送后,該第一服務(wù)器在確定各待發(fā)送信息時,可通過訪問數(shù)據(jù)庫確定各待發(fā)送信息。具體的,由于待發(fā)送信息為對提現(xiàn)請求的結(jié)果進(jìn)行查詢的信息,所以此時該第一服務(wù)器需要確定的是提現(xiàn)結(jié)果為未知的信息,并根據(jù)該提現(xiàn)結(jié)果未知的信息向?qū)?yīng)的銀行發(fā)送提現(xiàn)結(jié)果查詢信息,所以該第一服務(wù)器可以在訪問數(shù)據(jù)庫時,可先確定一段時間內(nèi)提現(xiàn)請求的提現(xiàn)結(jié)果為未知的提現(xiàn)請求,再根據(jù)各提現(xiàn)結(jié)果為未知的提現(xiàn)請求確定相應(yīng)的查詢提現(xiàn)請求的提現(xiàn)結(jié)果的信息,簡稱查詢信息(即,待發(fā)送信息)。進(jìn)一步的,在本申請中所述的提現(xiàn)請求,一般由該分布式系統(tǒng)的服務(wù)器發(fā)送至銀行,并根據(jù)該銀行返回的提現(xiàn)結(jié)果確定該提現(xiàn)請求的結(jié)果。但是由于可能存在在發(fā)送提現(xiàn)請求后,沒有接收到相應(yīng)的提現(xiàn)結(jié)果的情況,所以此時該分布式系統(tǒng)可發(fā)送查詢信息,以向該銀行重復(fù)詢問該提現(xiàn)請求的提現(xiàn)結(jié)果,直到確定該提現(xiàn)請求的提現(xiàn)結(jié)果為止。通過以上描述可知,即使發(fā)送過查詢信息, 該銀行也可能不會返回相應(yīng)的提現(xiàn)結(jié)果,需要該分布式系統(tǒng)反復(fù)發(fā)送查詢信息,以嘗試獲得該提現(xiàn)請求的提現(xiàn)結(jié)果,所以本申請所述的查詢信息存在兩種情況:對該提現(xiàn)請求尚未發(fā)送過相應(yīng)的查詢信息的情況,以及對該提現(xiàn)請求已經(jīng)發(fā)送過查詢信息但是仍未得到提現(xiàn)結(jié)果的情況(即,待發(fā)送信息包括:尚未發(fā)送過的信息,以及已發(fā)送但是尚未接收到響應(yīng)的信息)。進(jìn)一步的,由于每條待發(fā)送信息所包括的數(shù)據(jù)量較大,所以為了方便后續(xù)的操作,以減少該分布式系統(tǒng)中的數(shù)據(jù)交互、減輕該分布式系統(tǒng)的運(yùn)行壓力,該第一服務(wù)器還需要確定各待發(fā)送信息的標(biāo)識。具體的,該第一服務(wù)器,針對每一個待發(fā)送信息,根據(jù)預(yù)設(shè)的命名規(guī)則,建立相應(yīng)的標(biāo)識,使得該分布式系統(tǒng)中的每一個服務(wù)器均可以根據(jù)該建立的標(biāo)識確定對應(yīng)的待發(fā)送信息。例如,分布式系統(tǒng)確定當(dāng)前由服務(wù)器a發(fā)送提現(xiàn)請求結(jié)果的查詢信息,假設(shè)當(dāng)前時間為北京時間17:00,則服務(wù)器a遍歷數(shù)據(jù)庫中的數(shù)據(jù),并根據(jù)預(yù)設(shè)的條件:從當(dāng)前時間開始往前30分鐘之內(nèi)(即,北京時間16:30~17:00這30分鐘內(nèi))銀行提現(xiàn)請求的結(jié)果為未知的信息,確定出100條待發(fā)送信息。根據(jù)預(yù)設(shè)的命名規(guī)則,確定各待發(fā)送信息的標(biāo)識,進(jìn)一步假設(shè)根據(jù)該命名規(guī)則確定的標(biāo)識格式為:withdrawrsultquery_bankid_serialno。其中,withdrawrsultquery表示該標(biāo)識為對提現(xiàn)結(jié)果查詢的信息、bankid表示查詢發(fā)往的銀行的標(biāo)識、serialno表示該提現(xiàn)請求的序列號,并且銀行標(biāo)識如表1所示。銀行名稱銀行a銀行b銀行c銀行d銀行ebankidiiiiiiivv表1再次假設(shè),該服務(wù)器a確定的待發(fā)送信息中的提現(xiàn)請求的序列號為0~99,且均是發(fā)往銀行b的。則該服務(wù)器a最終確定的各待發(fā)送信息的標(biāo)識為:withdrawrsultquery_ii_0~withdrawrsultquery_ii_99。需要說明的是,由于分布式系統(tǒng)是為了應(yīng)對單一設(shè)備和軟件的性能不能滿足任務(wù)量的大量增長情形下的數(shù)據(jù)處理的需求而產(chǎn)生的技術(shù),所以可見該分布 式系統(tǒng)中可能會出現(xiàn)大量的待發(fā)送信息,而現(xiàn)有技術(shù)通常選用數(shù)據(jù)庫來存儲大量數(shù)據(jù),所以該第一服務(wù)器可以通過訪問數(shù)據(jù)庫來確定各待發(fā)送信息。當(dāng)然,第一服務(wù)器也可以通過其他方式確定各待發(fā)送信息,本申請并不做具體限定。s102:所述第一服務(wù)器將所述標(biāo)識發(fā)送到緩存區(qū)存儲。在本申請實施例中,該第一服務(wù)器在確定了各待發(fā)送信息的標(biāo)識后,由于存在該第一服務(wù)器未能將全部待發(fā)送信息發(fā)送的情況,所以為了后續(xù)分布式系統(tǒng)在切換至第二服務(wù)器繼續(xù)發(fā)送待發(fā)送信息時,該第二服務(wù)器可以確定該第一服務(wù)器發(fā)送了哪些待發(fā)送信息、還有哪些待發(fā)送信息未發(fā)送,該第一服務(wù)器還可將各待發(fā)送信息的標(biāo)識發(fā)送至緩存區(qū)存儲,以便該第二服務(wù)器可以通過訪問該緩存區(qū)確定該第一服務(wù)器發(fā)送各待發(fā)送信息的情況。另外,該緩存區(qū)可以是該第一服務(wù)器本地的緩存區(qū)、也可是該分布式系統(tǒng)的獨立緩存區(qū),只要后續(xù)步驟中該第二服務(wù)器可以訪問該緩存區(qū)即可。需要說明的是,一般為了提高發(fā)送效率,該分布式系統(tǒng)會有一套排隊規(guī)則,使各待發(fā)送信息在按照該排隊規(guī)則進(jìn)行排序后的待發(fā)送信息隊列的發(fā)送效率最高,但是,排隊規(guī)則是什么、如何進(jìn)行排隊,本申請并不做具體限定。在本申請中,可以視為在該第一服務(wù)器將各標(biāo)識發(fā)送至緩存區(qū)存儲時,各標(biāo)識是已經(jīng)通過排隊規(guī)則進(jìn)行排列后,具有先后順序的標(biāo)識隊列。繼續(xù)沿用上例,該服務(wù)器a將確定的100條待發(fā)送信息的標(biāo)識發(fā)送至該分布式系統(tǒng)的緩存區(qū)中存儲,并且各標(biāo)識按照自身的提現(xiàn)請求的序列號由大到小的順序排列,組成由100標(biāo)識組成的標(biāo)識隊列。s103:所述第一服務(wù)器根據(jù)緩存區(qū)中存儲的標(biāo)識,發(fā)送各待發(fā)送信息。在本申請實施例中,由于接收各待發(fā)送信息的接收端也存在繁忙和空閑的狀態(tài),所以若是該第一服務(wù)器在該接收端繁忙時(即,接收端運(yùn)行壓力大時)向該接收端發(fā)送待發(fā)送信息的話,就有可能出現(xiàn)由于接收端繁忙而導(dǎo)致待發(fā)送信息被積壓在接收端而沒有被處理的情況。并且,若是該第一服務(wù)器發(fā)送信息的頻率,超出了該接收端的處理信息的頻率上限,則同樣也會造成待發(fā)送信息 在接收端的積壓。于是,該第一服務(wù)器還可在發(fā)送各待發(fā)送信息之前,根據(jù)各待發(fā)送信息,確定接收各待發(fā)送信息的接收端(即,銀行的服務(wù)器),并向該接收端發(fā)送詢問信息,以便該第一服務(wù)器可以根據(jù)該接收端返回的應(yīng)答信息,確定向該接收端發(fā)送各待發(fā)送信息的時間段,以及該待發(fā)送信息的發(fā)送頻率,并根據(jù)該時間段和發(fā)送頻率,發(fā)送各待發(fā)送信息。另外,由于本申請中所述的提現(xiàn)請求可能是對不同銀行發(fā)出的提現(xiàn)請求,所以各待發(fā)送信息的接收端就有可能不止一個,并且是不同銀行的服務(wù)器。顯然不同銀行的服務(wù)器的空閑時間段很難完全一致,即,該第一服務(wù)器很難通過多個接收端返回的應(yīng)答信息確定統(tǒng)一的發(fā)送各待發(fā)送信息的時間段,所以在本申請中,該第一服務(wù)器確定的各待發(fā)送信息的接收端可相同,即,各待發(fā)送信息均發(fā)送向同一個接收端,而該第一服務(wù)器也僅向該接收端發(fā)送詢問信息。當(dāng)然,該分布式系統(tǒng)也可以選擇多個服務(wù)器分別執(zhí)行對不同接收端的信息發(fā)送任務(wù),則,即使每一個服務(wù)器均只負(fù)責(zé)向一個接收端發(fā)送信息,也可滿足該分布式系統(tǒng)向多個接收端發(fā)送信息的需求。進(jìn)一步的,由于分布式系統(tǒng)存在切換服務(wù)器執(zhí)行同一任務(wù)的模式,所以為了使切換后的服務(wù)器不會重復(fù)發(fā)送待發(fā)送信息,該第一服務(wù)器需要根據(jù)緩存區(qū)中存儲的各標(biāo)識發(fā)送相應(yīng)待發(fā)送信息,并且,每發(fā)送一條待發(fā)送信息,則刪除該緩存區(qū)中該已發(fā)送的待發(fā)送信息對應(yīng)的標(biāo)識。繼續(xù)沿用上例,由于服務(wù)器a確定各查詢信息均是發(fā)送向銀行b的,所以該服務(wù)器a需要向該銀行b的服務(wù)器發(fā)送詢問信息,假設(shè)該服務(wù)器a根據(jù)接收到該銀行b服務(wù)器返回的應(yīng)答信息,確定向該銀行b的服務(wù)器發(fā)送各待發(fā)送信息信息的時間段為北京時間17:30~17:45、發(fā)送該待發(fā)送信息的頻率為18秒一次,則該服務(wù)器a在北京時間17:30開始,以每18秒一次的頻率向該銀行b的服務(wù)器發(fā)送提現(xiàn)請求結(jié)果查詢信息,并且刪除該緩存區(qū)中相應(yīng)的標(biāo)識。如,北京時間17:30:00該服務(wù)器a發(fā)送標(biāo)識為withdrawrsultquery_ii_0的提現(xiàn)請求結(jié)果查詢信息、北京時間17:30:18該服務(wù)器a發(fā)送標(biāo)識為 withdrawrsultquery_ii_1的提現(xiàn)請求結(jié)果查詢信息等等,直到北京時間17:45為止。則此時,該服務(wù)器一共發(fā)送了標(biāo)識為送標(biāo)識為withdrawrsultquery_ii_0~withdrawrsultquery_ii_49的50條提現(xiàn)請求結(jié)果查詢信息,該緩存區(qū)中仍然剩余50個標(biāo)識(即,標(biāo)識為withdrawrsultquery_ii_50~withdrawrsultquery_ii_99的50個標(biāo)識)。s104:當(dāng)切換到所述分布式系統(tǒng)中的第二服務(wù)器發(fā)送信息時,所述第二服務(wù)器確定各待發(fā)送信息的標(biāo)識。在本申請實施例中,該分布式系統(tǒng)為了保證信息的發(fā)送效率,所以當(dāng)該第一服務(wù)器發(fā)送各待發(fā)送信息的時間超出在步驟s104中所述時間段時,切換到所述分布式系統(tǒng)中的第二服務(wù)器發(fā)送信息,或者當(dāng)該第一服務(wù)器自身的狀態(tài)滿足預(yù)設(shè)條件時,切換到所述分布式系統(tǒng)中的第二服務(wù)器發(fā)送信息。其中,在本申請中所述的發(fā)送各待發(fā)送信息的時間超出時間段,即接收端達(dá)到處理能力的上限,則繼續(xù)發(fā)送待發(fā)送信息可能會造成待發(fā)送信息在接收端的積壓,所以此時該分布式系統(tǒng)需要切換服務(wù)器繼續(xù)如該第一服務(wù)器在步驟s101~步驟s103中的發(fā)送信息過程。在本申請中所述的該第一服務(wù)器自身的狀態(tài)滿足預(yù)設(shè)條件,即該第一服務(wù)器達(dá)到了處理能力的上限(如,該第一服務(wù)器的運(yùn)行壓力達(dá)到預(yù)設(shè)的閾值),則可以確定該第一服務(wù)器不再適合發(fā)送各待發(fā)送信息,所以此時該分布式系統(tǒng)需要切換到運(yùn)行壓力較小的服務(wù)器繼續(xù)如該第一服務(wù)器在步驟s101~步驟s103中的發(fā)送信息過程。另外,由于在該第一服務(wù)器發(fā)送各待發(fā)送信息的同時,可能又新出現(xiàn)了其他需要發(fā)送的信息(即,新出現(xiàn)的待發(fā)送信息),則為了使該新出現(xiàn)的待發(fā)送信息可以較快的被發(fā)送,該分布式系統(tǒng)也可以周期性的切換服務(wù)器,以使得新出現(xiàn)的待發(fā)送信息無需長時間等待,便會被該分布式系統(tǒng)中的服務(wù)器確定標(biāo)識,并且該緩存區(qū)中也會被及時的添入該標(biāo)識。進(jìn)一步的,該第二服務(wù)器作為該分布式系統(tǒng)當(dāng)前確定的用于發(fā)送信息的服 務(wù)器,仍然需要如該第一服務(wù)器在步驟s101一樣,通過訪問該數(shù)據(jù)庫,確定一段時間內(nèi)提現(xiàn)請求的結(jié)果為未知的提現(xiàn)請求,再根據(jù)各提現(xiàn)請求結(jié)果為未知的提現(xiàn)請求確定相應(yīng)的查詢信息,并且該第二服務(wù)器根據(jù)與該第一服務(wù)器采用的命名規(guī)則相同的命名規(guī)則確定各待發(fā)送信息的標(biāo)識。并且由于該標(biāo)識是為了使得該分布式系統(tǒng)中的服務(wù)器均可根據(jù)同一個標(biāo)識確定相同的信息,所以在本申請中,該分布式系統(tǒng)中不同服務(wù)器根據(jù)同一提現(xiàn)請求確定的標(biāo)識是一樣的。需要說明的是,如在步驟s101中所述的原因,該第二服務(wù)器確定各待發(fā)送信息中,存在該第一服務(wù)器已發(fā)送但尚未接收到響應(yīng)的信息,以及該第一服務(wù)器尚未發(fā)送過的信息。繼續(xù)沿用上例,服務(wù)器a根據(jù)緩存區(qū)中的各標(biāo)識發(fā)送各查詢信息直到北京時間17:45,此時由于發(fā)送時間已經(jīng)超出銀行b服務(wù)器接收信息的時間段,所以該分布式系統(tǒng)在北京時間17:45切換至運(yùn)行壓力較小的第二服務(wù)器(即,服務(wù)器b)繼續(xù)發(fā)送信息。假設(shè),由該服務(wù)器a發(fā)送的50條待查詢信息中,前25條在發(fā)送后得到了該銀行b的服務(wù)器返回的提現(xiàn)結(jié)果,后25條未得到銀行b的服務(wù)器返回的提現(xiàn)結(jié)果(即,未接收到響應(yīng)),且在北京時間17:30~17:45之間沒有新增加的提現(xiàn)請求。則,該服務(wù)器b確定的查詢信息標(biāo)識(即,待發(fā)送信息的標(biāo)識)為:withdrawrsultquery_ii_25~withdrawrsultquery_ii_49和withdrawrsultquery_ii_49~withdrawrsultquery_ii_99,一共75個標(biāo)識,其中,withdrawrsultquery_ii_25~withdrawrsultquery_ii_49所對應(yīng)的查詢信息是需要重新發(fā)送的,withdrawrsultquery_ii_49~withdrawrsultquery_ii_99所對應(yīng)的查詢信息是尚未發(fā)送過的。s105:所述第二服務(wù)器將所述第二服務(wù)器自身確定的標(biāo)識添加到緩存區(qū)中,并將所述緩存區(qū)中保存的標(biāo)識進(jìn)行去重處理。在本申請實施例中,該第二服務(wù)器若要繼續(xù)發(fā)送信息,則首先需要將在步驟s104中確定的標(biāo)識發(fā)送至該緩存區(qū)中,其中該緩存區(qū)與在步驟s102中所述的緩存區(qū)為同一個。于是當(dāng)該第二服務(wù)器將自身確定的標(biāo)識添加到緩存區(qū)后, 為了避免重復(fù)發(fā)送各待發(fā)送信息,所以該第二服務(wù)器還需要對該緩存區(qū)中的標(biāo)識進(jìn)行去重處理。具體的,當(dāng)該第二服務(wù)器將標(biāo)識發(fā)送至該緩存區(qū)存儲后,該第二服務(wù)器需要遍歷該緩存區(qū)中的標(biāo)識,并將重復(fù)出現(xiàn)過的標(biāo)識進(jìn)行去重處理,使得該緩存區(qū)中的標(biāo)識均為唯一的。需要說明的是,在步驟s102中該第一服務(wù)器在將各標(biāo)識發(fā)送至緩存區(qū)存儲時,實際上也同樣需要對該緩存區(qū)中的標(biāo)識進(jìn)行去重處理。繼續(xù)沿用上例,由于該服務(wù)器b在步驟s104中確定了75個標(biāo)識,于是當(dāng)該服務(wù)器器b發(fā)送自身確定的標(biāo)識只緩存區(qū)后,該緩存區(qū)內(nèi)一共存儲有125個標(biāo)識,其中包括:該服務(wù)器a發(fā)送的50條標(biāo)識(即,withdrawrsultquery_ii_49~withdrawrsultquery_ii_99)、以及該服務(wù)器b發(fā)送的75條標(biāo)識(即,withdrawrsultquery_ii_25~withdrawrsultquery_ii_49和withdrawrsultquery_ii_49~withdrawrsultquery_ii_99)??梢姶藭r,該緩存區(qū)中出現(xiàn)了50條重復(fù)的標(biāo)識,于是當(dāng)該服務(wù)器b遍歷該緩存區(qū)進(jìn)行去重處理后,該緩存區(qū)中的標(biāo)識為:withdrawrsultquery_ii_49~withdrawrsultquery_ii_99和withdrawrsultquery_ii_25~withdrawrsultquery_ii_49,所有標(biāo)識在該緩存區(qū)中都是唯一的。s106:所述第二服務(wù)器根據(jù)緩存區(qū)中去重處理后的標(biāo)識,發(fā)送各待發(fā)送信息。在本申請實施例中,當(dāng)該第二服務(wù)器對該緩存區(qū)中的標(biāo)識進(jìn)行去重處理后,由于在步驟s103所述的原因,該第二服務(wù)器還需要根據(jù)各待發(fā)送信息,確定接收各待發(fā)送信息的接收端,再向該接收端發(fā)送詢問信息,之后根據(jù)該接收端返回的應(yīng)答信息,確定向該接收端發(fā)送各待發(fā)送信息的時間段,以及待發(fā)送信息的發(fā)送頻率,最后根據(jù)該緩存區(qū)中去重處理后的標(biāo)識、該時間段和發(fā)送頻率,發(fā)送各待發(fā)送信息。另外,若該第二服務(wù)器在該分布式系統(tǒng)切換服務(wù)器時,仍然未發(fā)送完各待發(fā)送信息,則該分布式系統(tǒng)會如步驟s104~步驟s106中所述的方法,先切換 至其他服務(wù)器確定各待發(fā)送信息的標(biāo)識,該服務(wù)器再將自身確定的標(biāo)識添加到緩存區(qū)中,之后將該緩存區(qū)中保存的標(biāo)識進(jìn)行去重處理,最后該服務(wù)器根據(jù)緩存區(qū)中去重處理后的標(biāo)識,繼續(xù)發(fā)送各待發(fā)送信息,直到將全部待發(fā)送信息發(fā)送為止。通過圖1所示的基于分布式環(huán)境的信息發(fā)送方法,該分布式系統(tǒng)中用于發(fā)送信息的服務(wù)器均根據(jù)同一命名規(guī)則確定各待發(fā)送信息的標(biāo)識,在將各標(biāo)識發(fā)送至緩存區(qū)中存儲后,還需對該緩存區(qū)中的標(biāo)識進(jìn)行去重處理,并且該用于發(fā)送信息的服務(wù)器在根據(jù)該緩存區(qū)中的標(biāo)識發(fā)送各待發(fā)送信息時,每發(fā)送一條待發(fā)送信息便刪除該緩存區(qū)中相應(yīng)的標(biāo)識,使得該分布式系統(tǒng)不論切換至哪個服務(wù)器發(fā)送信息,該切換后用于發(fā)送信息的服務(wù)器均可以通過該緩存區(qū),確定之前用于發(fā)送信息的服務(wù)器發(fā)送了哪些信息、仍有哪些信息未發(fā)送。相對于現(xiàn)有方法,在本申請?zhí)峁┑姆椒ㄖ?,由于?dāng)前用于發(fā)送信息的服務(wù)器還會對緩存區(qū)中的標(biāo)識進(jìn)行去重處理,所以可以有效避免信息重復(fù)發(fā)送的情況。進(jìn)一步的,當(dāng)出現(xiàn)信息已發(fā)送但是沒有響應(yīng)的情況是,該分布式系統(tǒng)在切換服務(wù)器后,該切換至的服務(wù)器可再次確定需要重復(fù)發(fā)送的信息,實現(xiàn)了信息的重復(fù)發(fā)送的目的。通過本方法可以有效地提高分布式系統(tǒng)的信息發(fā)送效率。另外,通過本申請實施例提供的方法,該分布式系統(tǒng)不僅可以發(fā)送提現(xiàn)請求的提現(xiàn)結(jié)果的查詢信息,還可以發(fā)送其他信息,如,話費查詢信息、辦理業(yè)務(wù)結(jié)果的查詢信息等。進(jìn)一步的,為了提高信息發(fā)送效率以及接受端處理信息的效率,在本請中當(dāng)該分布式系統(tǒng)中的服務(wù)器向接收端發(fā)送詢問信息時,該詢問信息中還可以攜帶待發(fā)送信息的數(shù)量信息,以使得該接收端可以通過待發(fā)送信息的數(shù)量,確定更加合理的時間段,則最終使得該服務(wù)器確定向該接收端發(fā)送各待發(fā)送信息的時間段更加合理。繼續(xù)沿用上例,假設(shè)在北京時間17:30,該服務(wù)器a向銀行b的服務(wù)器發(fā)送了詢問信息,其中攜帶有預(yù)計發(fā)送的待發(fā)送信息的數(shù)量信息(即,100條)。 繼續(xù)假設(shè)此時該銀行b的服務(wù)器可以分別確定在北京時間17:31~17:34和北京時間17:45~18:00,分別有3分鐘和15分鐘的時間段可以用于接收信息??梢?,若該服務(wù)器a在北京時間17:31~17:34執(zhí)行發(fā)送信息任務(wù)的話,該銀行b的服務(wù)器在只接收10條待發(fā)送信息時,該分布式系統(tǒng)就需要切換至服務(wù)器b繼續(xù)發(fā)送信息,使得服務(wù)器的切換更加繁瑣,分布式系統(tǒng)的運(yùn)行效率降低,使得信息發(fā)送的效率也同步降低。而若該服務(wù)器a在北京時間17:45~18:00執(zhí)行發(fā)送信息任務(wù)的話,該銀行b的服務(wù)器便可一次接收處理50條待發(fā)送信息,該分布式系統(tǒng)的服務(wù)器切換不至于太過頻繁,使得該發(fā)送信息任務(wù)的效率更高。更進(jìn)一步的,若該分布式系統(tǒng)中的服務(wù)器確定的待發(fā)送信息的數(shù)量太少時,該服務(wù)器繼續(xù)執(zhí)行待發(fā)送信息的發(fā)送任務(wù)就會使得服務(wù)器的運(yùn)行效率很低,即,不值得為了少量的待發(fā)送信息執(zhí)行一次信息發(fā)送任務(wù)。所以,在本申請中,為了使信息發(fā)送的效率更高,在該分布式系統(tǒng)中的服務(wù)器確定各待發(fā)送信息后,該服務(wù)器還可以判斷各待發(fā)送信息的數(shù)量是否達(dá)到預(yù)設(shè)的閾值,若是,則繼續(xù)執(zhí)行發(fā)送信息的任務(wù),若否,則不再執(zhí)行發(fā)送信息的任務(wù)。繼續(xù)沿用上例,假設(shè)在步驟s104中,當(dāng)切換至服務(wù)器b發(fā)送信息時,該服務(wù)器b確定的各待發(fā)送信息的數(shù)量為2,即,只有兩個待發(fā)送信息,而預(yù)設(shè)的閾值為15,則該服務(wù)器b判斷各待發(fā)送信息的數(shù)量未達(dá)到預(yù)設(shè)的閾值,不再執(zhí)行信息發(fā)送任務(wù),而等待該分布式系統(tǒng)分配其他任務(wù)。而這2個未發(fā)送的待發(fā)送信息,則可等待至下一次該分布式系統(tǒng)的服務(wù)器執(zhí)行信息發(fā)送任務(wù)時,再被發(fā)送至銀行b的服務(wù)器(即,接收端)?;趫D1所示的基于分布式環(huán)境的信息發(fā)送過程,本申請實施例還提供了一種基于分布式環(huán)境的信息發(fā)送裝置,如圖2所示。圖2是本申請實施例提供一種基于分布式環(huán)境的信息發(fā)送裝置的結(jié)構(gòu)示意圖,具體包括:標(biāo)識模塊201,用于確定各待發(fā)送信息的標(biāo)識;緩存去重模塊202,用于將所述標(biāo)識發(fā)送到緩存區(qū)存儲,并將所述緩存區(qū)中保存的標(biāo)識進(jìn)行去重處理;發(fā)送模塊203,用于根據(jù)緩存區(qū)中存儲的標(biāo)識,發(fā)送各待發(fā)送信息,其中,每發(fā)送一個待發(fā)送信息,則刪除所述緩存區(qū)中發(fā)送的待發(fā)送信息對應(yīng)的標(biāo)識。所述待發(fā)送信息包括:尚未發(fā)送過的信息,以及已發(fā)送但尚未接收到響應(yīng)的信息。在本裝置中,接收所述各待發(fā)送信息的接收端相同;所述發(fā)送模塊203還用于,在發(fā)送各待發(fā)送信息之前,根據(jù)各待發(fā)送信息,確定接收各待發(fā)送信息的接收端,向所述接收端發(fā)送詢問信息,根據(jù)所述接收端返回的應(yīng)答信息,確定向所述接收端發(fā)送各待發(fā)送信息的時間段,以及所述待發(fā)送信息的發(fā)送頻率;在發(fā)送各待發(fā)送信息時,根據(jù)所述時間段和發(fā)送頻率,發(fā)送各待發(fā)送信息。所述裝置還包括:監(jiān)測模塊204,用于當(dāng)監(jiān)測到所述裝置發(fā)送各待發(fā)送信息的時間超出所述時間段時,或者,當(dāng)監(jiān)測到所述裝置自身的狀態(tài)滿足預(yù)設(shè)條件時,向所述裝置所在的分布式系統(tǒng)中的第二服務(wù)器發(fā)送切換消息,以使所述分布式系統(tǒng)中的第二服務(wù)器發(fā)送信息。所述待發(fā)送信息為對提現(xiàn)請求進(jìn)行查詢的信息。具體的,上述如圖2所示的基于分布式環(huán)境的信息發(fā)送裝置可以位于分布式系統(tǒng)的服務(wù)器中。在一個典型的配置中,計算設(shè)備包括一個或多個處理器(cpu)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。內(nèi)存可能包括計算機(jī)可讀介質(zhì)中的非永久性存儲器,隨機(jī)存取存儲器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲器(rom)或閃存(flashram)。內(nèi)存是計算機(jī)可讀介質(zhì)的示例。計算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動和非可移動媒體可以由任 何方法或技術(shù)來實現(xiàn)信息存儲。信息可以是計算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計算機(jī)的存儲介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機(jī)存取存儲器(sram)、動態(tài)隨機(jī)存取存儲器(dram)、其他類型的隨機(jī)存取存儲器(ram)、只讀存儲器(rom)、電可擦除可編程只讀存儲器(eeprom)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學(xué)存儲、磁盒式磁帶,磁帶磁磁盤存儲或其他磁性存儲設(shè)備或任何其他非傳輸介質(zhì),可用于存儲可以被計算設(shè)備訪問的信息。按照本文中的界定,計算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitorymedia),如調(diào)制的數(shù)據(jù)信號和載波。還需要說明的是,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、商品或者設(shè)備中還存在另外的相同要素。本領(lǐng)域技術(shù)人員應(yīng)明白,本申請的實施例可提供為方法、系統(tǒng)或計算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實施例、完全軟件實施例或結(jié)合軟件和硬件方面的實施例的形式。而且,本申請可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、cd-rom、光學(xué)存儲器等)上實施的計算機(jī)程序產(chǎn)品的形式。以上所述僅為本申請的實施例而已,并不用于限制本申請。對于本領(lǐng)域技術(shù)人員來說,本申請可以有各種更改和變化。凡在本申請的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請的權(quán)利要求范圍之內(nèi)。當(dāng)前第1頁12