一種復合式產品售后信息及服務推送系統的制作方法
【技術領域】
[0001]本發明涉及信息傳輸,特別涉及一種復合式產品售后信息及服務推送系統。
【背景技術】
[0002]信息推送技術在移動終端領域中的應用倍受關注。在產品銷售與服務領域,售后信息的推送主要依靠網絡、短信、郵件等向用戶主動提供產品相關信息,但是目前網絡信號穩定性差,并且缺乏對售后信息的屏蔽功能,以至于出現網絡廣告污染,垃圾信息橫行,很多重要的信息可能因為垃圾信息搶占通道而無法完成推送,帶來不可估量的損失。
[0003]因此,針對相關技術中所存在的上述問題,目前尚未提出有效的解決方案。
【發明內容】
[0004]為解決上述現有技術所存在的問題,本發明提出了一種復合式產品售后信息及服務推送系統,包括:
[0005]主服務器,用于系統中的業務邏輯處理,維持推送隊列,售后信息的分類、封裝、解包,管理移動應用客戶端的連接,并為應用提供推送服務API ;
[0006]售后信息服務器,用于售后信息收發管理,作為移動應用客戶端的信息推送中介,接收從主服務器傳遞過來的售后信息,并以郵件、短信或通知消息的形式推送到相應的客戶端;
[0007]售后信息數據庫,用于存儲未完成推送的信息,等待移動應用客戶端建立連接時重新進行推送,以及
[0008]移動應用客戶端,完成售后信息的接收、解包,并經過售后信息過濾后送給相應的應用程序進行處理。
[0009]優選地,所述主服務器中包括:
[0010]售后信息封裝模塊,根據傳入售后信息的需要,封裝形成符合擴展通信協議的數據包;
[0011]售后信息調度模塊,對于不同產品種類的售后信息維持不同的等待隊列,將推送售后信息的數據包加入到特定推送方式的等待隊列中,根據優先級調整相應的位置,將無法完成的推送加入至售后信息數據庫中;
[0012]所述移動應用客戶端中包括:
[0013]售后信息解包模塊,主要負責將通過網絡傳入的數據包按照協議進行解析,并通過移動應用客戶端上的推送服務交給相應應用程序處理,由應用顯示并生成售后信息通知;
[0014]移動應用客戶端的售后信息屏蔽模塊用于多層屏蔽,根據特定的算法篩選售后信息,減少垃圾信息對移動應用客戶端推送的干擾,加強推送的安全性;
[0015]模塊間的通信和交互通過注冊監聽器實現。
[0016]優選地,所述主服務器通過socket連接多個移動應用客戶端,采用基于異步I/O機制,主服務器中由消息句柄負責售后信息調度處理,將應用層發送的售后信息進行協議封裝,并將信息按照標志位設定,送入消息傳送通道的緩存隊列中,針對不同類別的協議包,進行特定的對象封裝;通過移動應用客戶端注冊的監聽器傳遞給上層應用,在智能操作系統中,開啟后臺推送服務,所述售后信息屏蔽模塊采用雙層屏蔽方式,包括關鍵詞屏蔽和索引值屏蔽;在關鍵詞屏蔽中,通過霍夫曼查找樹來構建關鍵詞查找結構,在索引值屏蔽中,通過散列算法阻止垃圾信息的反復推送。
[0017]優選地,在所述售后信息調度模塊中,主服務器實現不同等級的信息的轉發,建立不同優先級的信息隊列并執行相應的調度算法,推送系統接收的售后信息后,根據售后信息的優先級把售后信息分發到相應的優先級隊列上,采用相應的調度算法控制優先級隊列中售后信息的讀取和發送;售后信息隊列利用動態權重的加權循環隊列,其中每個隊列的所占的權重比由主服務器確定,售后信息調度模塊根據初始權重和售后信息發送次數動態地改變權重,當某一隊列的售后信息發送次數超過其本身設定的權重時,其余隊列的權重也會相應地增加,具體步驟如下:
[0018](I)為每個優先級隊列分配一個初始權重Qi,和超額比值Ri,初始值都為1,其中i為隊列序號;
[0019](2)售后信息調度模塊在不同的優先級從高到低,循環訪問,并且維護一個記錄當前隊列發送售后信息次數的計數器Ns,初始時,從最高優先級的售后信息隊列開始調度;
[0020](3)當售后信息調度模塊訪問到當前售后信息隊列j時,其中j為隊列序號,若該隊列有售后信息發送,則取出發送,直到該條信息發送到所對應的所有用戶,售后信息每次被發送到一個移動應用客戶端時,Ns加I ;
[0021](4)若售后信息發送完后,Ns〈Qj,則售后信息調度模塊繼續從該隊列取出售后信息發送;若Ns>Qj,設定Rj = Ns/Qj,其余所有隊列權重Qi = Qi X Rj,售后信息調度模塊跳轉到下一優先級隊列;若該隊列無售后信息發送,也跳轉到下一優先級隊列;
[0022](5)在跳轉到下一優先級隊列k后,Ns重置為0,所有隊列權重Qi = Qi/Rk,Rk重置為I ;
[0023](6)當所有售后信息隊列中都沒有待發售后信息時,售后信息調度模塊將停止調度,直到隊列中存在待發售后信息為止。
[0024]本發明相比現有技術,具有以下優點:實現了一種可靠的售后信息和服務推送系統,利用異步通信提高推送效率,減少垃圾信息,僅需維持單一服務就可以支持多個程序的推送業務,節省開銷。
【附圖說明】
[0025]圖1是根據本發明實施例的復合式產品售后信息及服務推送系統的結構圖。
【具體實施方式】
[0026]下文與圖示本發明原理的附圖一起提供對本發明一個或者多個實施例的詳細描述。結合這樣的實施例描述本發明,但是本發明不限于任何實施例。本發明的范圍僅由權利要求書限定,并且本發明涵蓋諸多替代、修改和等同物。在下文描述中闡述諸多具體細節以便提供對本發明的透徹理解。出于示例的目的而提供這些細節,并且無這些具體細節中的一些或者所有細節也可以根據權利要求書實現本發明。
[0027]本發明實現了一種可靠的售后信息和服務推送系統,并部署售后信息屏蔽模塊減少垃圾信息的傳播。在服務器端,利用異步I/o技術優化網絡通信機制,提高推送效率;在移動應用客戶端,利用接口定義語言進行進程間通信,并為注冊的應用提供遠程服務調用接口,僅需維持單一推送服務就可以支持多個應用程序的推送業務,節省開銷。
[0028]本發明的一方面提供了一種復合式產品售后信息及服務推送系統。圖1是根據本發明實施例的復合式產品售后信息及服務推送系統結構圖。
[0029]推送系統主要包括了主服務器、售后信息數據庫、售后信息服務器和移動應用客戶端。網絡推送需要維持和移動應用客戶端的長時鏈接,所以推送系統的主服務器需要承載大量的并發操作,并且需要開放多個信息推送通道。為提高網絡通信性能,對于不同產品種類的售后信息應維持不同的等待隊列。對于無法完成的推送信息,緩存于數據庫中,等待移動應用客戶端建立連接時重新進行推送。在移動應用客戶端中,添加信息屏蔽模塊,可以根據關鍵詞屏蔽,也可以由用戶標識垃圾信息屏蔽。
[0030]主服務器負責系統中的業務邏輯處理,維持推送隊列,售后信息的分類、封裝、解包,管理移動應用客戶端的連接,并為應用提供推送服務API。
[0031]售后信息服務器主要負責售后信息收發管理,作為移動應用客戶端的信息推送中介,接收從主服務器傳遞過來的售后信息,并以郵件、短信或通知消息的形式推送到相應的客戶端。
[0032]售后信息數據庫主要是用于存儲未完成推送的信息。
[0033]移動應用客戶端主要完成售后信息的接收、解包,并經過售后信息屏蔽模塊過濾后送給相應的應用處理。
[0034]為了降低模塊間的耦合度,需要對各模塊進行合理的封裝,開放適當的接口。模塊間的通信和交互,主要通過注冊監聽器實現。
[0035]主服務器中的模塊主要包括通信協議的封裝和解包、通信業務處理、底層通信連接。售后信息封裝模塊主要是根據傳入售后信息的需要,封裝形成符合擴展通信協議的數據包。
[0036]售后信息調度模塊將推送售后信息的數據包加入到特定推送方式的等待隊列中,根據優先級調整相應的位置,將無法完成的推送加入至售后信息數據庫中。
[0037]緩存數據庫的數據緩存模塊存儲推送完成和未完成的售后信息。
[0038]移動應用客戶端的售后信息解包模塊主要負責將通過網絡傳入的數據包按照協議進行解析,并通過移動應用客戶端上的推送服務交給相應應用程序處理,由應用顯示并生成售后?目息通知。
[0039]移動應用客戶端的售后信息屏蔽模塊用于多層屏蔽,根據特定的算法篩選售后信息,減少垃圾信息對移動應用客戶端推送的干擾,加強推送的安全性。
[0040]服務器需要通過socket連接大量移動應用客戶端。為提高服務器的效率,采用基于異步I/o機制。當所有底層的網絡鏈路通信(包括將數據從內存拷貝到緩沖區)完成時,由系統來通知上層應用。服務器中,由消息句柄負責售后信息調度處理,將應用層發送的售后信息進行協議封裝,并將信息按照標志位設定,送入消息傳送通道的緩存隊列中,由相應的發送通道將數據送出。數據庫緩存當前推送的信息。在實現協議處理時,針對不同類別的協議包,進行特定的對象封裝。
[0041]移動應用客戶端用于接收信息、解析協議和屏蔽消息,并通過移動應用客戶端注冊的監聽器傳遞給上層應用。在智能操作系統中,可以開啟后臺推送服務,各個應用可以注冊網絡、售后信息服務器、短信監聽器,推送服務主要通過定義接口定義語言,并和移動應用客戶端通信交互,實現數據的跨進程傳遞。協議的解析原理同服務器端,并在售后信息上傳至服務時,需要經過售后信息的屏蔽模塊來屏蔽垃圾信息。
[0042]在售后信息屏蔽模塊,為加強屏蔽效果,提高屏蔽的準確度,采用雙層屏蔽方式,一層是關鍵詞屏蔽,一層是索引值屏蔽。在關鍵詞屏蔽中,通過霍夫曼查找樹來構建關鍵詞查找結構,可以提高字符串在多關鍵詞下的查找速度。算法如下:
[0043]第一步是利用關鍵詞生