消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng),所述消息推送方法包括:收集消息服務(wù)器中所有生成的或已經(jīng)更新的消息信息;將所述消息信息插入一消息隊列中;將各個消息信息發(fā)送至對應(yīng)的消息處理線程中;各個消息處理線程處理生成推送格式的消息信息并以異步消息處理方式推送;各個消息處理線程檢測是否推送成功,若失敗,將發(fā)送失敗的所述消息信息插入一異常消息隊列中;以異步消息處理方式推送所述異常消息隊列中的各個推送格式的消息信息。本發(fā)明還公開了使用所述方法的外發(fā)服務(wù)器及由多個外發(fā)服務(wù)器組成的外發(fā)服務(wù)器系統(tǒng)。本發(fā)明能夠避免系統(tǒng)阻塞以及推送信息丟失,同時還通過多個外發(fā)服務(wù)器的主從結(jié)構(gòu)構(gòu)造來提高可靠性。
【專利說明】消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng),特別是涉及一種商務(wù)平臺的消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的發(fā)展,特別是最近分銷渠道的發(fā)展,很多企業(yè)已經(jīng)不是只有自己賣自己的產(chǎn)品和服務(wù),而是把一部分產(chǎn)品分給其它分銷商銷售,或者自己賣其它企業(yè)的產(chǎn)品。
[0003]在互聯(lián)網(wǎng)上表現(xiàn)出來,就是很多企業(yè)推出自己的開放電商平臺,讓其它分銷商通過接口能接入到所述電商平臺,在線上拉取產(chǎn)品信息,進行訂單或銷售的服務(wù),從中提取一部分的傭金。在這過程中,企業(yè)之間必然每天會有大量的信息要進行交互,比如產(chǎn)品信息,訂單的狀態(tài)信息等,信息交互過程中會面臨以下兩個問題:
[0004](I)作為產(chǎn)品服務(wù)商,產(chǎn)品的訂單狀態(tài)等信息要實時地推送給分銷商,讓分銷商實時地來調(diào)用產(chǎn)品服務(wù)商的電商平臺的對外接口,這樣可能會給電商平臺的接口服務(wù)器帶來巨大壓力,同時這種被動式調(diào)用信息的方式,還要求從電商平臺的數(shù)據(jù)庫的一大堆數(shù)據(jù)中提供有用的信息,效率非常低。
[0005](2)當(dāng)產(chǎn)品服務(wù)商的產(chǎn)品要放到其它電商平臺去銷售時,作為一個產(chǎn)品提供方,當(dāng)有產(chǎn)品上架時,就要維護更新其它一大批的分銷站點,到各個站點都添加一次更新的信息,這時對于一個信息錄入人員,將要面對大量重復(fù)的工作量,而且很容易錯漏。
[0006]為了解決這個問題,傳統(tǒng)的電商平臺采用同步操作的信息推送平臺系統(tǒng),即當(dāng)有信息需要推送時,平臺執(zhí)行同步推送信息操作。由于電商平臺的接口服務(wù)器能力有限,一旦需要推送的數(shù)據(jù)量變大,推送必定會遇到阻塞,同時推送失敗還沒有有效手段進行重復(fù)推送,造成數(shù)據(jù)的丟失。而且由于推送平臺需要建立長鏈接來進行信息推送,一旦當(dāng)信息推送平臺系統(tǒng)中一臺服務(wù)器出現(xiàn)宕機,就會導(dǎo)致整個電商平臺的癱瘓。
【發(fā)明內(nèi)容】
[0007]本發(fā)明要解決的技術(shù)問題是為了克服現(xiàn)有技術(shù)的同步操作的信息推送平臺系統(tǒng)容易阻塞,從而導(dǎo)致推送信息丟失以及信息推送平臺系統(tǒng)沒有運行保障措施的缺陷,提供一種消息推送方法及其外發(fā)服務(wù)器和外發(fā)服務(wù)器系統(tǒng)。通過采用隊列的異步發(fā)送來避免系統(tǒng)阻塞,以及采用異常隊列來避免推送信息丟失。
[0008]本發(fā)明是通過下述技術(shù)方案來解決上述技術(shù)問題的:
[0009]本發(fā)明提供了一種消息推送方法,其特點是,所述消息推送方法包括以下步驟:
[0010]S1、收集消息服務(wù)器中所有生成的或已經(jīng)更新的消息信息;
[0011]S2、將所述消息信息打包并插入一消息隊列中;
[0012]S3、將所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程中;
[0013]S4、各個消息處理線程將接收到消息信息處理生成推送格式的消息信息并以異步消息處理方式推送;[0014]S5、各個消息處理線程檢測推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則進入步驟S6 ;
[0015]S6、將發(fā)送失敗的所述推送格式的消息信息插入一異常消息隊列中;
[0016]S7、以異步消息處理方式推送所述異常消息隊列中的各個推送格式的消息信息,并檢測推送的推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則重復(fù)步驟S7。
[0017]本發(fā)明中通過建立消息隊列的方式來統(tǒng)一管理服務(wù)器中生成的或已經(jīng)更新的消息信息的推送,從而使得已經(jīng)更新的消息信息的推送與服務(wù)器推送能力等匹配,避免同步推送時容易產(chǎn)生的消息阻塞。其中多個消息處理線程采用異步消息處理方式逐一處理消息信息,而且由于采用了多個消息處理線程同時處理,所以還能夠?qū)崿F(xiàn)同步處理消息信息的功能。也就是說,本發(fā)明中通過同步異步的結(jié)合來在保證推送鏈路的通暢的前提下,提高推送的效率。
[0018]而且本發(fā)明還通過進一步地建立異常消息隊列來統(tǒng)一地管理推送失敗的消息信息,并重復(fù)推送失敗的消息信息來減少推送失敗的消息信息,并且這種異常消息隊列的消息信息的推送方式還避免了推送失敗的消息信息的丟失。
[0019]其中本發(fā)明的所述消息服務(wù)器是指包含有消息信息的服務(wù)器,而且最好是有不斷地更新的消息信息的服務(wù)器。至于對所述消息信息的種類和內(nèi)容并不限定,所以本發(fā)明的消息服務(wù)器可以是任何具有能夠更新數(shù)據(jù)的服務(wù)器。
[0020]所述生成的或已經(jīng)更新的消息信息是指服務(wù)器中用于表征人為等方式改變的數(shù)據(jù)所生成的消息信息,或者是已存在的消息信息的內(nèi)容的更新。其中所述生成或更新是指相對于時間順序在先,即上一次的消息信息收集時服務(wù)器中數(shù)據(jù)的狀態(tài)而言表征所述數(shù)據(jù)的變化的消息信息。本發(fā)明正是對這些生成的或更新后的消息信息的維護,避免消息阻塞導(dǎo)致的消息信息的丟失等。
[0021]其中所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程時,所述各個消息信息和各個消息處理線程之間的對應(yīng)關(guān)系可以是現(xiàn)有技術(shù)中消息處理線程和其能夠處理的消息的種類所決定的對應(yīng)關(guān)系,也可以是用戶根據(jù)需要自定義的對應(yīng)關(guān)系,本發(fā)明中無論這種對應(yīng)關(guān)系的具體內(nèi)容是什么,只要在各個消息信息和各個消息處理線程之間能夠產(chǎn)生一定的處理關(guān)系即可。因此本領(lǐng)域技術(shù)人員應(yīng)該明確各個消息信息和各個消息處理線程之間的對應(yīng)關(guān)系可以是任意的。
[0022]步驟S2中所述打包是指現(xiàn)有技術(shù)中數(shù)據(jù)傳輸中常用的打包方式,而且本領(lǐng)域技術(shù)人員可以根據(jù)需要選用不同的現(xiàn)有的打包方式,這里就不再贅述。同樣所述異步消息處理方式也是現(xiàn)有技術(shù)中數(shù)據(jù)傳輸中常用的基于時序依次進行的消息處理方式,這里也就不再詳細(xì)贅述。
[0023]而且步驟S4中消息處理線程將消息信息先轉(zhuǎn)化為能夠推送的發(fā)送格式在進行相應(yīng)的推送,其中本領(lǐng)域技術(shù)人員應(yīng)該知道這種格式的轉(zhuǎn)化和推送的具體方式都可以采用現(xiàn)有技術(shù)的格式轉(zhuǎn)化和推送方式這里也不再贅述。其中本發(fā)明中所述推送格式是指現(xiàn)有技術(shù)中任何能夠應(yīng)用于推送的消息信息的發(fā)送格式,本發(fā)明并不限定所述推送格式的具體所采用的格式。
[0024]較佳地,所述步驟S4為:各個消息處理線程分別在接收到消息信息中添加一標(biāo)識符,所述標(biāo)識符的內(nèi)容預(yù)設(shè)為0,然后分別將接收到消息信息處理生成推送格式的消息信息并以異步消息處理方式推送;
[0025]所述步驟S5為:
[0026]S51、各個消息處理線程檢測推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則進入步驟S52;
[0027]S52、檢測推送失敗的推送格式的消息信息中的標(biāo)識符的內(nèi)容是否等于一預(yù)設(shè)閾值,若是進入步驟S6,否則進入步驟S53 ;
[0028]S53、將推送失敗的推送格式的消息信息中的標(biāo)識符的內(nèi)容加入1,然后將返回步驟 S51。
[0029]本發(fā)明中還為各個消息處理線程設(shè)置了對同一消息信息的重發(fā)次數(shù),從而盡可能在各個消息處理線程中完成消息信息的推送,減少異常消息隊列所處理的消息信息的數(shù)量。這是因為大部分推送失敗的原因都是偶發(fā)性的,容易克服,所以通過重新推送就可以成功發(fā)送,通過上述的設(shè)置方式能夠使得異常消息隊列中的消息信息均是確實存在異常情況的推送,所以使得異常消息隊列所處理的內(nèi)容特定化,降低了異常消息隊列所要處理內(nèi)容的復(fù)雜性。
[0030]其中所述預(yù)設(shè)閾值的內(nèi)容是可以任意設(shè)定的,通過調(diào)節(jié)這個閾值可以確定濾除的推送失敗中偶發(fā)性的推送失敗的比例。
[0031]較佳地,所述步驟S2中還包括以下步驟:
[0032]從所述消息信息中選取需要同步發(fā)送的消息信息,以同步消息處理方式推送所述需要同步發(fā)送的消息信息。
[0033]由于消息服務(wù)器中對于某些特定消息信息的推送的時延等要求較高,所以采用異步消息處理方式不能夠很好的滿足上述要求,所以本發(fā)明還通過提供同步消息處理方式來同步地推送這些特定消息信息。其中這些特定消息信息在不同服務(wù)類型的服務(wù)器中是不同的,甚至可以是用戶自行定義的,所以本發(fā)明對所述特定消息信息的內(nèi)容不做限定。
[0034]因此本領(lǐng)域技術(shù)人員應(yīng)該明確本發(fā)明的需要同步發(fā)送的消息信息正是指這些在不同服務(wù)類型的服務(wù)器中是不同的,甚至可以是用戶自行定義的特定消息信息。
[0035]此外所述同步消息處理方式同樣可以是現(xiàn)有技術(shù)中任意的能夠同步處理并推送消息信息的具體實現(xiàn)方式,只要是能夠?qū)崿F(xiàn)同步處理并推送消息信息的技術(shù)方案都可以應(yīng)用于本發(fā)明中。
[0036]本發(fā)明還提供了一種外發(fā)服務(wù)器,其特點是,所述外發(fā)服務(wù)器包括一定時消息收集單元、一 SOA (面向?qū)ο蠹軜?gòu))接口、一隊列生成單元、一推送接口和一處理單元;所述外發(fā)服務(wù)器使用如上所述的消息推送方法;
[0037]其中所述定時消息收集單元以一預(yù)設(shè)時間間隔從消息服務(wù)器收集所有生成的或已經(jīng)更新的消息信息,所述SOA接口用于從SOA架構(gòu)的服務(wù)器中收集所有生成的或已經(jīng)更新的消息信息;
[0038]所述隊列生成單元生成一消息隊列和一異常消息隊列;所述處理單元中運行各個消息處理線程,并將所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程中;所述處理單元還將推送失敗的消息信息插入所述異常消息隊列;
[0039]所述推送接口以異步消息處理方式推送所述異常消息隊列中的各個消息信息或者推送各個消息處理線程生成的推送格式的消息信息。[0040]為了便于描述,本發(fā)明將所述外發(fā)服務(wù)器按照功能劃分為各種模塊進行分別描述,所以在實施本發(fā)明時,可以把各模塊的功能在同一個或多個軟件和/或硬件中實現(xiàn)。
[0041]其中所述預(yù)設(shè)時間間隔是本領(lǐng)域技術(shù)人員可以任意設(shè)定的,其中所述預(yù)設(shè)時間間隔最好和外部的消息服務(wù)器中數(shù)據(jù)的更新速率匹配,從而避免遺漏更新或生成的消息信
肩、O
[0042]較佳地,所述處理單元還用于從定時消息收集單元和SOA接口收集的消息信息中選取需要同步發(fā)送的消息信息,并通過推送接口以同步消息處理方式推送所述需要同步發(fā)送的消息信息。
[0043]所述需要同步發(fā)送的消息信息和同步消息處理方式在本發(fā)明中定義已在上面進行了詳細(xì)地闡述,這里就不再贅述。
[0044]較佳地,所述外發(fā)服務(wù)器還包括一輸入接口,所述輸入接口接收拉取服務(wù)信息,所述處理單元還基于所述拉取服務(wù)信息通過SOA接口獲取數(shù)據(jù)庫數(shù)據(jù)并通過所述推送接口推送。
[0045]本發(fā)明的外發(fā)服務(wù)器還能夠進行按照用戶要求的服務(wù)內(nèi)容提供相應(yīng)的數(shù)據(jù)或信
肩、O
[0046]本發(fā)明還提供了一種外發(fā)服務(wù)器系統(tǒng),其特點是,所述外發(fā)服務(wù)器系統(tǒng)包括多個如上所述的外發(fā)服務(wù)器,每個外發(fā)服務(wù)器的處理單元中均還具有一守護線程和心跳線程;
[0047]其中預(yù)設(shè)所述外發(fā)服務(wù)器中的一個作為主服務(wù)器,其余所有的所述外發(fā)服務(wù)器作為從服務(wù)器;
[0048]所述主服務(wù)器的守護進程休眠,心跳線程運行,所有的所述從服務(wù)器處于休眠狀態(tài),但守護進程運行;
[0049]所有的從服務(wù)器的守護進程實時地檢測是否收到主服務(wù)器的心跳線程發(fā)送的心跳信息,若接收到,則維持所有的所述從服務(wù)器的休眠狀態(tài),否則,將主服務(wù)器切換至休眠狀態(tài),從所有的所述從服務(wù)器中隨機喚醒一個從服務(wù)器,所述被喚醒的從服務(wù)器的守護進程休眠,心跳線程運行。
[0050]本發(fā)明中通過多個服務(wù)器建立的主從服務(wù)器能夠始終保持有一臺外發(fā)服務(wù)器進行消息信息的推送工作,從而避免了一個外發(fā)服務(wù)器脫機導(dǎo)致系統(tǒng)失效的問題。
[0051]其中所述守護進程和心跳線程是通過信號交互方式來確認(rèn)外發(fā)服務(wù)器的運行狀態(tài),當(dāng)外發(fā)服務(wù)器故障是,心跳線程必然會發(fā)生異常,也就是心跳信息的失效或消失,而守護進程就是檢測心跳線程是否發(fā)生異常。而且所述守護進程和心跳線程的構(gòu)建方式可以采用任意的現(xiàn)有的交互式工作狀態(tài)判斷方式。
[0052]本領(lǐng)域技術(shù)人員應(yīng)該能夠認(rèn)識到本發(fā)明中所述視頻圖像采集單元可以是任意的能夠?qū)崿F(xiàn)集圖像數(shù)據(jù)和/或視頻數(shù)據(jù)的單元部件或模塊等。
[0053]在符合本領(lǐng)域常識的基礎(chǔ)上,上述各優(yōu)選條件,可任意組合,即得本發(fā)明各較佳實例。
[0054]本發(fā)明的積極進步效果在于:
[0055]本發(fā)明的消息推送方法及其外發(fā)服務(wù)器通過采用隊列的異步發(fā)送來避免系統(tǒng)阻塞,以及采用異常隊列來避免推送信息丟失。同時通過多個外發(fā)服務(wù)器的主從結(jié)構(gòu)構(gòu)造的外發(fā)服務(wù)器系統(tǒng)能夠在部分外發(fā)服務(wù)器失效時有其他外發(fā)服務(wù)器繼續(xù)承擔(dān)推送任務(wù),所以提高信息推送平臺的可靠性。
[0056]也就是說,本發(fā)明在解決電商平臺的互聯(lián)網(wǎng)接口之間的信息的交互,解決作為產(chǎn)品服務(wù)商與下游分銷商的產(chǎn)品信息和訂單狀態(tài)等信息的同步的同時,同步的進行異步信息的同步,進行商品的上架,修改,下架等操作。解決錄入人員,業(yè)務(wù)人員大量的工作量和重復(fù)的工作量,提高工作效率。
【專利附圖】
【附圖說明】
[0057]圖1為本發(fā)明的實施例1的外發(fā)服務(wù)器的結(jié)構(gòu)示意圖。
[0058]圖2為本發(fā)明的實施例1的外發(fā)服務(wù)器的消息推送的流程圖。
[0059]圖3為本發(fā)明的實施例2的外發(fā)服務(wù)器系統(tǒng)的通信結(jié)構(gòu)示意圖。
【具體實施方式】
[0060]下面通過實施例的方式進一步說明本發(fā)明,但并不因此將本發(fā)明限制在所述的實施例范圍之中。
[0061]本發(fā)明的外發(fā)服務(wù)器的信息收集來息于SOA接口和消息收集單元,以上接口和單元會把收集的信息經(jīng)過以協(xié)議格式生成相應(yīng)的消息包,插入到消息隊列中,等待消息推送。同時不停的從消息隊列中的讀取消息,根據(jù)協(xié)議等方式,分發(fā)到對應(yīng)的消息處理線程中,進行消息的處理和推送,一旦失敗,進入重推隊列。
[0062]本發(fā)明的外發(fā)服務(wù)器系統(tǒng)有專門的線程對其中的各個外發(fā)服務(wù)器進行維護。本發(fā)明采用類似主從機制以達到容錯的目的,一旦一臺服務(wù)器宕機,在一段時間內(nèi),另一臺備機將會被啟用,繼續(xù)工作。
[0063]下面通過下述實施例來對本發(fā)明進行進一步地詳細(xì)地說明。
[0064]實施例1
[0065]如圖1所示,本實施例的外發(fā)服務(wù)器包括一定時消息收集單元1、一 SOA接口 2、一隊列生成單元3、一推送接口 4、一處理單元5和一輸入接口 6。
[0066]其中所述定時消息收集單元I以一預(yù)設(shè)時間間隔T從消息服務(wù)器中所有生成的或已經(jīng)更新的消息信息。所述SOA接口 2用于從SOA架構(gòu)的服務(wù)器中收集所有生成的或已經(jīng)更新的消息信息。
[0067]所述隊列生成單元3生成一消息隊列和一異常消息隊列。所述處理單元5中運行著多個消息處理線程,所述消息處理線程用于處理消息信息,即所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程之后,各個消息處理線程處理生成的推送格式的消息信息。所述處理單元5還將推送失敗的消息信息插入所述異常消息隊列。
[0068]所述處理單元4還用于從定時消息收集單元I和SOA接口 2收集的消息信息中選取需要同步發(fā)送的消息信息,并通過推送接口 4以同步消息處理方式推送所述需要同步發(fā)送的消息信息。
[0069]所述推送接口 4用于以異步消息處理方式推送所述異常消息隊列中的各個消息信息以及推送各個消息處理線程處理生成的推送格式的消息信息。
[0070]所述輸入接口 6用于接收客戶端等發(fā)送的拉取服務(wù)信息,所述處理單元4還基于所述拉取服務(wù)信息通過SOA接口 2獲取數(shù)據(jù)庫數(shù)據(jù)并通過所述推送接口 4推送。[0071]本實施例的工作原理如下:
[0072]首先,所述定時消息收集單元I和SOA接口 2根據(jù)采集到的消息信息,與此同時所述隊列生成單元3創(chuàng)建一個消息隊列和一個異常消息隊列。然后將確定需要附送的消息信息并插入到消息隊列中。
[0073]其中消息隊列的結(jié)構(gòu)可以如下表所示:
[0074]
【權(quán)利要求】
1.一種消息推送方法,其特征在于,所述消息推送方法包括以下步驟: 51、收集消息服務(wù)器中所有生成的或已經(jīng)更新的消息信息; 52、將所述消息信息打包并插入一消息隊列中; 53、將所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程中; 54、各個消息處理線程將接收到消息信息處理生成推送格式的消息信息并以異步消息處理方式推送; 55、各個消息處理線程檢測推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則進入步驟S6 ; 56、將發(fā)送失敗的所述推送格式的消息信息插入一異常消息隊列中; 57、以異步消息處理方式推送所述異常消息隊列中的各個推送格式的消息信息,并檢測推送的推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則重復(fù)步驟S7。
2.如權(quán)利要求1所述的消息推送方法,其特征在于,所述步驟S4為:各個消息處理線程分別在接收到消息信息中添加一標(biāo)識符,所述標(biāo)識符的內(nèi)容預(yù)設(shè)為O,然后分別將接收到消息信息處理生成推送格式的消息信息并以異步消息處理方式推送; 所述步驟S5為: 551、各個消息處理線程檢測推送格式的消息信息是否推送成功,若成功,流程結(jié)束,否則進入步驟S52 ; 552、檢測推送失敗的推送格式的消息信息中的標(biāo)識符的內(nèi)容是否等于一預(yù)設(shè)閾值,若是進入步驟S6,否則進入步驟S53 `; 553、將推送失敗的推送格式的消息信息中的標(biāo)識符的內(nèi)容加入1,然后將返回步驟S51。
3.如權(quán)利要求1或2所述的消息推送方法,其特征在于,所述步驟S2中還包括以下步驟: 從所述消息信息中選取需要同步發(fā)送的消息信息,以同步消息處理方式推送所述需要同步發(fā)送的消息信息。
4.一種外發(fā)服務(wù)器,其特征在于,所述外發(fā)服務(wù)器包括一定時消息收集單元、一 SOA接口、一隊列生成單元、一推送接口和一處理單元;所述外發(fā)服務(wù)器使用如權(quán)利要求1或2所述的消息推送方法; 其中所述定時消息收集單元以一預(yù)設(shè)時間間隔從消息服務(wù)器收集所有生成的或已經(jīng)更新的消息信息,所述SOA接口用于從SOA架構(gòu)的服務(wù)器中收集所有生成的或已經(jīng)更新的消息信息; 所述隊列生成單元生成一消息隊列和一異常消息隊列;所述處理單元中運行各個消息處理線程,并將所述消息隊列中的各個消息信息發(fā)送至對應(yīng)的消息處理線程中;所述處理單元還將推送失敗的消息信息插入所述異常消息隊列; 所述推送接口以異步消息處理方式推送所述異常消息隊列中的各個消息信息或者推送各個消息處理線程生成的推送格式的消息信息。
5.如權(quán)利要求4所述的外發(fā)服務(wù)器,其特征在于,所述處理單元還用于從定時消息收集單元和SOA接口收集的消息信息中選取需要同步發(fā)送的消息信息,并通過推送接口以同步消息處理方式推送所述需要同步發(fā)送的消息信息。
6.如權(quán)利要求4或5所述的外發(fā)服務(wù)器,其特征在于,所述外發(fā)服務(wù)器還包括一輸入接口,所述輸入接口接收拉取服務(wù)信息,所述處理單元還基于所述拉取服務(wù)信息通過SOA接口獲取數(shù)據(jù)庫數(shù)據(jù)并通過所述推送接口推送。
7.一種外發(fā)服務(wù)器系統(tǒng),其特征在于,所述外發(fā)服務(wù)器系統(tǒng)包括多個如權(quán)利要求4-6中任一項所述的外發(fā)服務(wù)器,每個外發(fā)服務(wù)器的處理單元中均還具有一守護線程和一心跳線程; 其中預(yù)設(shè)所述外發(fā)服務(wù)器中的一個作為主服務(wù)器,其余所有的所述外發(fā)服務(wù)器作為從服務(wù)器; 所述主服務(wù)器的守護進程休眠,心跳線程運行,所有的所述從服務(wù)器處于休眠狀態(tài),但守護進程運行; 所有的從服務(wù)器的守護進程實時地檢測是否收到主服務(wù)器的心跳線程發(fā)送的心跳信息,若接收到,則維持所有的所述從服務(wù)器的休眠狀態(tài),否則,將主服務(wù)器切換至休眠狀態(tài),從所有的所述從服務(wù)器中隨機喚醒一個從服務(wù)器,所述被喚醒的從服務(wù)器的守護進程休目民,心跳 線程運行。
【文檔編號】H04L29/06GK103856392SQ201310261283
【公開日】2014年6月11日 申請日期:2013年6月26日 優(yōu)先權(quán)日:2013年6月26日
【發(fā)明者】梁曉靖, 吳少鈞, 洪東杰 申請人:攜程計算機技術(shù)(上海)有限公司