移動互聯網大規模準實時數據分級訂閱發布系統及方法
【專利摘要】一種移動互聯網大規模準實時數據分級訂閱發布系統及方法,包括安裝有手機App和通知模塊的智能手機、用于通知的服務器、業務服務器、數據庫服務器、緩存服務器以及數據源;所述數據源的數量為一個以上,所述數據源同業務服務器相連接,所述業務服務器同緩存服務器相連接,所述業務服務器也同數據庫服務器和用于通知的服務器相連接,所述數據庫服務器也同用于通知的服務器相連接,所述安裝有手機App的智能手機同用于通知的服務器和業務服務器之間建立有通信連接,所述智能手機為用戶所有。結合其方法避免了現有技術中無法兼顧性能與成本,往往使得移動互聯網下海量的數據請求使得經濟投入非常巨大的缺陷。
【專利說明】
移動互聯網大規模準實時數據分級訂閱發布系統及方法
技術領域
[0001]本發明屬于數據訂閱發布技術領域,具體涉及一種移動互聯網大規模準實時數據分級訂閱發布系統及方法。【背景技術】
[0002]伴隨著移動互聯網大規模應用,也隨著網絡、通信技術和Internet的飛速發展,計算技術已進入分布式計算時代,普適計算、移動計算等新一代網絡計算是以大規模、分散控制、動態性、自治性和松耦合為主要特征的大型分布式計算。傳統的網絡計算把服務和數據看作一組靜態的對象和數據集,以請求/應答的方式處理信息交互,產生了基于RPC的中間件和面向對象的中間件技術。由于請求/應答通訊機制具有同步、緊耦合的特點,使得該機制對網絡的穩定性要求非常高,而且系統的性能嚴重受制于服務器的工作效率,削弱了系統的擴展能力。為了適應復雜動念的網絡環境,人們在緊耦合的通訊機制上進行改進,提出異步的通訊方法,引入了某種間接的、減耦的交互形式。
[0003]而發布/訂閱系統具有松耦合、匿名、多對多通信和可擴展的特點,已成為支持新一代網絡計算的重要基礎中間件平臺,發布/訂閱通信范型作為一種異步通信機制,在時間、空間和控制流三個方面都提供了完全的解耦特性,同時還具有匿名通信和一對多通信等特性,近年來得到了各界的普遍關注,已經成為熱點,而現有的訂閱發布系統對傳輸提供了可靠性保證,對提高事件傳輸效率,應用于大型的分布式網絡計算中間件平臺中具有重要的意義。
[0004]但是在具體應用過程中,對于一個要求準實時的移動互聯網大規模數據分級訂閱發布系統,必須同時考慮以下多方面的維度:
[0005]1.數據能夠準實時地到達;
[0006]2.數據能夠可靠地到達;
[0007]3.系統能夠滿足大吞吐量數據的要求;
[0008]4.系統能夠滿足高并發需求;
[0009]5.數據能夠經濟地到達(包括對服務方和用戶方都經濟可行)。
[0010]而性能與成本通常是矛盾的,對于大規模的移動互聯網應用而言,必須采取一定的措施,才能夠兼顧性能與成本,否則移動互聯網下海量的數據請求,將會使得經濟投入非常巨大。
【發明內容】
[0011]本發明的目的提供一種移動互聯網大規模準實時數據分級訂閱發布系統及方法, 避免了現有技術中無法兼顧性能與成本,往往使得移動互聯網下海量的數據請求使得經濟投入非常巨大的缺陷。
[0012]為了克服現有技術中的不足,本發明提供了一種移動互聯網大規模準實時數據分級訂閱發布系統及方法的解決方案,具體如下:
[0013]一種移動互聯網大規模準實時數據分級訂閱發布系統,包括安裝有手機App和通知模塊的智能手機、用于通知的服務器、業務服務器、數據庫服務器、緩存服務器以及數據源;
[0014]所述數據源的數量為一個以上,所述數據源同業務服務器相連接,所述業務服務器同緩存服務器相連接,所述業務服務器也同數據庫服務器和用于通知的服務器相連接, 所述數據庫服務器也同用于通知的服務器相連接,所述安裝有手機App的智能手機同用于通知的服務器和業務服務器之間建立有通信連接,所述智能手機為用戶所有。
[0015]所述移動互聯網大規模準實時數據分級訂閱發布系統的方法,步驟如下:
[0016]步驟1:所述數據源向業務服務器發送授權請求或驗證請求,業務服務器就進行對數據源的授權驗證;
[0017]步驟2:若通過了授權驗證,數據源以設定的時間間隔T1向業務服務器發送業務數據;
[0018]步驟3:業務服務器接收到了業務數據后,并根據業務需求存放在緩存服務器或數據庫服務器中,具體方式為業務服務器收到數據源發送來的業務數據后,首先刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中,而業務服務器根據業務數據的持久化邏輯,把業務數據存入數據庫服務器;所述業務服務器還根據業務需求判定發送來的業務數據的權重級別,以此來進行分級處理;
[0019]步驟4:在針對高權重信息的處理方式中,具體有如下三種方式:
[0020](1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即高權重信息發送給手機App;[〇〇21](2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發送針對高權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來進行判斷,若最新的業務數據為高權重信息,就發送給手機App;
[0022](3)通過手機App外的通知模塊推送數據變化請求,也就是業務服務器判定發送來的業務數據的權重級別為高權重信息時,就主動發送通知請求給用于通知的服務器,用于通知的服務器用來根據用戶對業務數據的訂閱關系向用戶所擁有的智能手機發布通知信息,智能手機的通知模塊就推送數據變化請求,即提醒用戶主動激活手機App來獲取高權重信息;[〇〇23]步驟5:在針對中等權重信息的處理方式中,具體有如下兩種方式:
[0024](1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即中等權重信息發送給手機App;
[0025](2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發送針對中等權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來進行判斷,若最新的業務數據為中等權重信息,就發送給手機App;
[0026]步驟6:針對低權重信息的處理方式為用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即低權重信息發送給手機App。
[0027]本發明兼顧了性能與成本,使得移動互聯網下海量的數據請求的費用降低。【附圖說明】
[0028]圖1為本發明的移動互聯網大規模準實時數據分級訂閱發布系統的結構圖。【具體實施方式】[〇〇29]下面結合附圖和實施例對
【發明內容】
作進一步說明:
[0030]參照圖1所示,移動互聯網大規模準實時數據分級訂閱發布系統,包括安裝有手機 App和通知模塊的智能手機、用于通知的服務器、業務服務器、數據庫服務器、緩存服務器以及數據源;
[0031]所述數據源的數量為一個以上,所述數據源同業務服務器相連接,所述業務服務器同緩存服務器相連接,所述業務服務器也同數據庫服務器和用于通知的服務器相連接, 所述數據庫服務器也同用于通知的服務器相連接,所述安裝有手機App的智能手機同用于通知的服務器和業務服務器之間建立有通信連接,所述智能手機為用戶所有。[〇〇32]經過授權驗證通過后的數據源均用來向業務服務器發送業務數據;所述數據源以設定的時間間隔n向業務服務器發送業務數據。
[0033]每個所述數據源發送業務數據的時間間隔T1可配置,即每個數據源根據其業務數據的差異,可以配置所需要求的發送數據時間間隔。
[0034]所述業務服務器用來接收通過授權驗證的數據源發送來的業務數據,并根據業務需求存放在緩存服務器或數據庫服務器中,具體方式為業務服務器收到數據源發送來的業務數據后,首先刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中, 以便手機App在請求數據時能夠獲得最新的業務數據,而業務服務器根據業務數據的持久化邏輯,把業務數據存入數據庫服務器;所述業務服務器還根據業務需求判定發送來的業務數據的權重級別,以此來進行分級處理,對于權重高的業務數據,除更新緩存服務器外, 還經過用于通知的服務器來向手機App推送通知。
[0035]所述刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中的方式有三種,分別為以添加的方式把所述發送來的業務數據作為最新的業務數據、以更新的方式把所述發送來的業務數據作為最新的業務數據或者以刪除原先的業務數據的方式來剩余的業務數據作為最新的業務數據。
[0036]所述業務服務器還根據業務需求判定發送來的業務數據的權重級別進行分級處理,其方式是用發送來的業務數據的權重級別來表示業務數據的優先級,并可根據任何業務規則選定兩個權重級別,分別為第一權重級別和第二權重級別,其中第一權重級別大于第二權重級別,若發送來的業務數據的權重級別大于或等于第一權重級別就屬于高權重信息;若發送來的業務數據的權重級別小于第一權重級別且大于或等于第二權重級別就屬于中等權重信息;其他的就屬于低權重信息。
[0037]所述業務服務器還根據業務需求判定發送來的業務數據的權重級別以此來進行分級處理的方式是對發送來的業務數據在實時性、可靠性、重要性三個方面分別進行權重評判,對于三個方面不同的權重評判采取不同的數據處理策略,以便能夠達到既滿足業務需求,又滿足性能需求,還能滿足成本需求。
[0038]所述數據庫服務器用來存儲持久化需求的業務數據;數據庫服務器用來存儲業務數據的處理規則和權重級別;數據庫服務器用來存儲用戶與業務數據的訂閱關系。
[0039]所述用于通知的服務器用來接收業務服務器的通知請求;用于通知的服務器用來根據用戶對業務數據的訂閱關系向用戶發布通知信息;用于通知的服務器使用多個第三方推送服務,以保證高權重的信息能夠在某個第三方推送有故障的情況下能夠傳達;用于通知的服務器可動態調配多個第三方推送服務器的使用,當第三方推送服務器不可達、出錯或者服務質量下降時可自行動態調配。
[0040]所述手機App在啟動時,通過調用接口刷新業務數據;當高權重的業務數據,也即高權重信息產生時,用于通知的服務器將向手機App所在的智能手機發出推送通知,智能手機接到推送通知后,如果App為啟動狀態,則立即刷新數據,以便第一時間展示高權重的業務數據;如果此時手機App非啟動狀態,用戶則可以在智能手機通過系統的通知功能激活 App,以便刷新獲取高權重的業務數據;用戶可在手機App中通過手動刷新數據。
[0041]為了能夠兼顧性能與成本,本發明提出了對準實時數據進行分權重處理的方式, 用發送來的業務數據的權重級別來表示業務數據的優先級,并隨機選定兩個權重級別,分別為第一權重級別和第二權重級別,其中第一權重級別大于第二權重級別,若發送來的業務數據的權重級別大于或等于第一權重級別就屬于高權重信息;若發送來的業務數據的權重級別小于第一權重級別且大于或等于第二權重級別就屬于中等權重信息;其他的就屬于低權重信息;也可以對準實時數據在實時性、可靠性、重要性三個方面分別進行權重評判, 對于三個方面不同的權重評判采取不同的數據處理策略,以便能夠達到既滿足業務需求, 又滿足性能需求,還能滿足成本需求。
[0042]經過對準實時系統的長期調研分析,本發明將業務需求分以下幾類:[〇〇43] 1.第一類:當用戶需要數據時,即主動請求數據時,能夠獲得當前最新的準實時業務數據;
[0044]2.第二類:用戶無需主動請求,準實時的業務數據會自動展示出來以便用戶;
[0045]3.第三類:當業務數據的重要性達到一定級別時,需要通知或者提醒用戶數據的變化。[〇〇46]對此,本發明設計了三種數據刷新方式如下:
[0047] 1.用戶手動刷新數據,滿足第一類業務需求;
[0048]2.手機App自動定時向服務器請求數據,滿足第二類業務需求;[〇〇49]3.通過手機App外的通知模塊推送數據變化請求,以提醒用戶主動激活手機App獲取數據,滿足第三類業務需求;
[0050]對于這三種方式,后臺都需要支持數據的準實時性,但是前端根據需求的分級設置的權重屬性不同,在前端交互方式中進行差異化的處理。
[0051]本發明靈活使用以上三種方式的組合,對App獲取數據進行權重匹配,進行差異化對待。[〇〇52] 1.對于高權重信息的處理方式:[〇〇53] a)用戶手動刷新數據;[〇〇54] b)手機App自動定時向服務器請求數據;
[0055] c)通過手機App外的通知模塊推送數據變化請求;
[0056]2.對于中等權重信息的處理方式:[〇〇57] a)用戶手動刷新數據;[〇〇58] b)手機App自動定時向服務器請求數據;[〇〇59]3.對于低權重信息的處理方式:[〇〇6〇]用戶手動刷新數據。
[0061]這樣,所述移動互聯網大規模準實時數據分級訂閱發布系統的方法,步驟如下: [〇〇62]步驟1:所述數據源向業務服務器發送授權請求或驗證請求,業務服務器就進行對數據源的授權驗證;[〇〇63]步驟2:若通過了授權驗證,數據源以設定的時間間隔T1向業務服務器發送業務數據;
[0064]步驟3:業務服務器接收到了業務數據后,根據業務需求存放在緩存服務器或數據庫服務器中,具體方式為業務服務器收到數據源發送來的業務數據后,首先刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中,以便手機App在請求數據時能夠獲得最新的業務數據,而業務服務器根據業務數據的持久化邏輯,把業務數據存入數據庫服務器;所述業務服務器還根據業務需求判定發送來的業務數據的權重級別,以此來進行分級處理;[〇〇65]步驟4:在針對高權重信息的處理方式中,具體有如下三種方式:
[0066](1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即高權重信息發送給手機App;
[0067](2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發送針對高權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來進行判斷,若最新的業務數據為高權重信息,就發送給手機App;
[0068](3)通過手機App外的通知模塊推送數據變化請求,也就是業務服務器判定發送來的業務數據的權重級別為高權重信息時,就主動發送通知請求給用于通知的服務器,用于通知的服務器用來根據用戶對業務數據的訂閱關系向用戶所擁有的智能手機發布通知信息,智能手機的通知模塊就推送數據變化請求,即提醒用戶主動激活手機App來獲取高權重信息;[〇〇69]步驟5:在針對中等權重信息的處理方式中,具體有如下兩種方式:
[0070](1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即中等權重信息發送給手機App;
[0071](2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發送針對中等權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來進行判斷,若最新的業務數據為中等權重信息,就發送給手機App;
[0072]步驟6:針對低權重信息的處理方式為用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即低權重信息發送給手機App。
[0073]以上所述,僅是本發明的較佳實施例而已,并非對本發明作任何形式上的限制,雖然本發明已以較佳實施例揭露如上,然而并非用以限定本發明,任何熟悉本專業的技術人員,在不脫離本發明技術方案范圍內,當可利用上述揭示的技術內容做出些許更動或修飾為等同變化的等效實施例,但凡是未脫離本發明技術方案內容,依據本發明的技術實質,在本發明的精神和原則之內,對以上實施例所作的任何簡單的修改、等同替換與改進等,均仍屬于本發明技術方案的保護范圍之內。
【主權項】
1.一種移動互聯網大規模準實時數據分級訂閱發布系統,其特征在于,包括安裝有手 機App和通知模塊的智能手機、用于通知的服務器、業務服務器、數據庫服務器、緩存服務器 以及數據源;所述數據源的數量為一個以上,所述數據源同業務服務器相連接,所述業務服務器同 緩存服務器相連接,所述業務服務器也同數據庫服務器和用于通知的服務器相連接,所述 數據庫服務器也同用于通知的服務器相連接,所述安裝有手機App的智能手機同用于通知 的服務器和業務服務器之間建立有通信連接,所述智能手機為用戶所有。2.根據權利要求1所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于經過授權驗證通過后的數據源均用來向業務服務器發送業務數據;所述數據源以設定的 時間間隔n向業務服務器發送業務數據。3.根據權利要求2所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于每個所述數據源發送業務數據的時間間隔T1可配置,即每個數據源根據其業務數據的差 異,可以配置所需要求的發送數據時間間隔。4.根據權利要求1所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于所述業務服務器用來接收通過授權驗證的數據源發送來的業務數據,并根據業務需求存 放在緩存服務器或數據庫服務器中,具體方式為業務服務器收到數據源發送來的業務數據 后,首先刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中,而業務 服務器根據業務數據的持久化邏輯,把業務數據存入數據庫服務器;所述業務服務器還根 據業務需求判定發送來的業務數據的權重級別,以此來進行分級處理,對于權重高的業務 數據,除更新緩存服務器外,還經過用于通知的服務器來向手機App推送通知。5.根據權利要求4所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于所述刷新緩存服務器把該業務數據作為最新的業務數據存放到緩存服務器中的方式有 三種,分別為以添加的方式把所述發送來的業務數據作為最新的業務數據、以更新的方式 把所述發送來的業務數據作為最新的業務數據或者以刪除原先的業務數據的方式來把剩 余的業務數據作為最新的業務數據。6.根據權利要求4所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于所述業務服務器還根據業務需求判定發送來的業務數據的權重級別進行分級處理,其方 式是用發送來的業務數據的權重級別來表示業務數據的優先級,并可根據任何業務規則選 定兩個權重級別,分別為第一權重級別和第二權重級別,其中第一權重級別大于第二權重 級別,若發送來的業務數據的權重級別大于或等于第一權重級別就屬于高權重信息;若發 送來的業務數據的權重級別小于第一權重級別且大于或等于第二權重級別就屬于中等權 重信息;其他的就屬于低權重信息。7.根據權利要求4所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于所述業務服務器還根據業務需求判定發送來的業務數據的權重級別以此來進行分級處 理的方式是對發送來的業務數據在實時性、可靠性、重要性三個方面分別進行權重評判,對 于三個方面不同的權重評判采取不同的數據處理策略。8.根據權利要求1所述的移動互聯網大規模準實時數據分級訂閱發布系統,其特征在 于所述數據庫服務器用來存儲持久化需求的業務數據;數據庫服務器用來存儲業務數據的 處理規則和權重級別;數據庫服務器用來存儲用戶與業務數據的訂閱關系;所述用于通知的服務器用來接收業務服務器的通知請求;用于通知的服務器用來根據 用戶對業務數據的訂閱關系向用戶發布通知信息;用于通知的服務器使用多個第三方推送 服務;用于通知的服務器可動態調配多個第三方推送服務器的使用,當第三方推送服務器 不可達、出錯或者服務質量下降時可自行動態調配;所述手機App在啟動時,通過調用接口刷新業務數據;當高權重的業務數據,也即高權 重信息產生時,用于通知的服務器將向手機App所在的智能手機發出推送通知,智能手機接 到推送通知后,如果App為啟動狀態,則立即刷新數據,以便第一時間展示高權重的業務數 據;如果此時手機App非啟動狀態,用戶則可以在智能手機通過系統的通知功能激活App,以 便刷新獲取高權重的業務數據;用戶可在手機App中通過手動刷新數據。9.根據權利要1所述的移動互聯網大規模準實時數據分級訂閱發布系統的方法,其特 征在于,步驟如下:步驟1:所述數據源向業務服務器發送授權請求或驗證請求,業務服務器就進行對數據 源的授權驗證;步驟2:若通過了授權驗證,數據源以設定的時間間隔T1向業務服務器發送業務數據;步驟3:業務服務器接收到了業務數據后,根據業務需求存放在緩存服務器或數據庫服 務器中,具體方式為業務服務器收到數據源發送來的業務數據后,首先刷新緩存服務器把 該業務數據作為最新的業務數據存放到緩存服務器中,而業務服務器根據業務數據的持久 化邏輯,把業務數據存入數據庫服務器;所述業務服務器還根據業務需求判定發送來的業 務數據的權重級別,以此來進行分級處理;步驟4:在針對高權重信息的處理方式中,具體有如下三種方式:(1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服 務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即高權重信息發送給手 機 App;(2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發 送針對高權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來進 行判斷,若最新的業務數據為高權重信息,就發送給手機App;(3)通過手機App外的通知模塊推送數據變化請求,也就是業務服務器判定發送來的業 務數據的權重級別為高權重信息時,就主動發送通知請求給用于通知的服務器,用于通知 的服務器用來根據用戶對業務數據的訂閱關系向用戶所擁有的智能手機發布通知信息,智 能手機的通知模塊就推送數據變化請求,即提醒用戶主動激活手機App來獲取高權重信息;步驟5:在針對中等權重信息的處理方式中,具體有如下兩種方式:(1)用戶手動刷新數據的方式,也就是用戶通過手機App主動發送數據的請求到業務服 務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即中等權重信息發送給 手機App;(2)手機App自動定時向服務器請求數據,也就是手機App自動定時地向業務服務器發 送針對中等權重信息的請求,然后業務服務器就從緩存服務器中把最新的業務數據取出來 進行判斷,若最新的業務數據為中等權重信息,就發送給手機App;步驟6:針對低權重信息的處理方式為用戶手動刷新數據的方式,也就是用戶通過手機 App主動發送數據的請求到業務服務器中,然后業務服務器就從緩存服務器中把最新的業務數據,也即低權重信息發送給手機App。
【文檔編號】H04L12/58GK105979498SQ201610240349
【公開日】2016年9月28日
【申請日】2016年4月18日
【發明人】馬海濤, 吳品醇, 柳青, 王炳峰
【申請人】醇錢科技發展(北京)有限公司