一種業務控制方法及裝置與流程
2023-12-01 10:01:12 1
本發明涉及信息處理技術,尤其涉及一種業務控制方法及裝置。
背景技術:
隨著移動網際網路的不斷發展,智能終端上出現了各類監控手機流量、話費、增值業務消費的應用程式。通常,此類應用程式會在固定時間段規律性地自動觸發用戶信息查詢請求等功能,進而向運營商業務平臺發送查詢指令,並在收到運營商業務平臺的反饋後自動解析反饋的內容。
隨著移動終端監控軟體的用戶群體不斷擴大,此類應用程式的請求會定時地對電信運營商支撐網的業務系統形成巨大的脈衝式衝擊。通常,運營商應對這種業務增長的解決方案仍是以系統擴容的方式為主,同時針對用戶不同請的求類型定義優先級,對高優先級的業務請求進行優先處理。但是當業務量暴增時,特別是當系統受到大批量業務請求衝擊時,該解決方案通常會對部分用戶主動發送的業務請求造成延遲。
技術實現要素:
有鑑於此,本發明提供一種業務控制方法及裝置,以保證及時處理用戶主動發送的業務請求。
為解決上述技術問題,本發明提供一種業務控制方法,包括:
接收用戶的查詢請求;
確定所述查詢請求是否為用戶主動發送的查詢請求;
若所述查詢請求是用戶主動發送的查詢請求,則優先響應所述查詢請求;若所述查詢請求不是用戶主動發送的查詢請求,則推遲響應所述查詢請求。
優選的,所述確定所述查詢請求是否為用戶主動發送的查詢請求包括:
獲取業務控制條件;
當所述查詢請求與所述業務控制條件匹配時,確定所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求與所述業務控制條件不匹配時,確定所述查詢請求是用戶主動發送的查詢請求。
優選的,所述方法還包括:
設置所述業務控制條件。
優選的,所述設置所述業務控制條件包括:
獲取所述用戶在預設時間段內的歷史查詢請求;
對所述歷史查詢請求進行分析,獲取所述歷史查詢請求的類型、發送時間;
根據每一類型的歷史查詢請求的發送時間確定每一類型的歷史查詢請求的發送頻率超過預設值時的時間段;
若在所述時間段內收到的與每一類型的歷史查詢請求為同類型的查詢請求的數量超過閾值,則將所述歷史查詢請求和所述時間段的對應關係作為所述業務控制條件。
優選的,所述當所述查詢請求與所述業務控制條件匹配時,確定所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求與所述業務控制條件不匹配時,確定所述查詢請求是用戶主動發送的查詢請求,包括:
當所述查詢請求的發送時間與對應的業務控制條件的時間段匹配時,則所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求的發送時間與對應的業務控制條件的時間段不匹配時,所述查詢請求是用戶主動發送的查詢請求。
優選的,所述方法還包括:
利用所述業務控制條件更新業務控制條件資料庫;和/或
對所述業務控制條件進行驗證。
優選的,所述若所述查詢請求是用戶主動發送的查詢請求,則優先響應所述查詢請求;若所述查詢請求不是用戶主動發送的查詢請求,則推遲響應所述查詢請求,包括:
若所述查詢請求是用戶主動發送的查詢請求,將所述查詢請求存入第一優先級處理隊列;若所述查詢請求不是用戶主動發送的查詢請求,將所述查詢請求存入第二優先級處理隊列;
其中所述第一優先級處理隊列的優先級高於所述第二優先級處理隊列的 優先級。
優選的,所述方法還包括:
若所述查詢請求是用戶主動發送的查詢請求,在預設時間內獲取所述查詢請求的數量;
若所述查詢請求的數量在預設時間內超過預設閾值時,將所述用戶主動發送的查詢請求存入所述第二優先級處理隊列。
優選的,所述方法還包括:
若所述查詢請求是用戶主動發送的查詢請求,為所述查詢請求添加標識。
第二方面,本發明還提供一種業務控制裝置,包括:
接收單元,用於接收用戶的查詢請求;
確定單元,用於確定所述查詢請求是否為用戶主動發送的查詢請求;
處理單元,用於在所述查詢請求是用戶主動發送的查詢請求時,則優先響應所述查詢請求;在所述查詢請求不是用戶主動發送的查詢請求時,則推遲響應所述查詢請求。
優選的,所述確定單元包括:
獲取模塊,用於獲取業務控制條件;
確定模塊,用於當所述查詢請求與所述業務控制條件匹配時,確定所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求與所述業務控制條件不匹配時,確定所述查詢請求是用戶主動發送的查詢請求。
優選的,所述裝置還包括:
設置單元,用於設置所述業務控制條件。
優選的,所述設置單元包括:
獲取模塊,用於獲取所述用戶在預設時間段內的歷史查詢請求;
分析模塊,用於對所述歷史查詢請求進行分析,獲取所述歷史查詢請求的類型、發送時間;
統計模塊,用於根據每一類型的歷史查詢請求的發送時間確定每一類型的歷史查詢請求的發送頻率超過預設值時的時間段;
設置模塊,用於當在所述時間段內收到的與每一類型的歷史查詢請求為同類型的查詢請求的數量超過閾值時,則將所述歷史查詢請求和所述時間段的對 應關係作為所述業務控制條件。
優選的,所述確定模塊具體用於:當所述查詢請求的發送時間與對應的業務控制條件的時間段匹配時,則所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求的發送時間與對應的業務控制條件的時間段不匹配時,所述查詢請求是用戶主動發送的查詢請求。
優選的,所述裝置還包括:
更新單元,用於利用所述業務控制條件更新業務控制條件資料庫;和/或
驗證單元,用於對所述業務控制條件進行驗證。
優選的,所述處理單元具體用於:在所述查詢請求是用戶主動發送的查詢請求時,將所述查詢請求存入第一優先級處理隊列;在所述查詢請求不是用戶主動發送的查詢請求時,將所述查詢請求存入第二優先級處理隊列;
其中所述第一優先級處理隊列的優先級高於所述第二優先級處理隊列的優先級。
優選的,所述處理單元還用於:
在所述查詢請求是用戶主動發送的查詢請求時,在預設時間內獲取所述查詢請求的數量;若所述查詢請求的數量在預設時間內超過預設閾值時,將所述用戶主動發送的查詢請求存入所述第二優先級處理隊列。
優選的,所述處理單元還用於:在所述查詢請求是用戶主動發送的查詢請求時,為所述查詢請求添加標識。
本發明的上述技術方案的有益效果如下:
在本發明實施例中,根據接收到的用戶的查詢請求確定其是否為用戶主動發送的查詢請求,並在當所述查詢請求是用戶主動發送的查詢請求,則優先響應所述查詢請求;當所述查詢請求不是用戶主動發送的查詢請求時,則推遲響應所述查詢請求。由上可以看出,由於利用本發明實施例的方案可以對用戶的查詢請求進行區分從而在其為用戶主動發送的查詢請求時優先處理,因此,利用本發明實施例的方案可以保證及時的處理用戶主動發送的業務請求。
附圖說明
圖1為本發明實施例一的業務控制方法的流程圖;
圖2為本發明實施例二的業務控制方法的流程圖;
圖3為用於實施本發明實施例二的業務控制方法的架構圖;
圖4為本發明實施例二中DPI驗證的流程圖;
圖5為本發明實施例二中請求緩衝池的處理示意圖;
圖6為本發明實施例三的業務控制裝置的示意圖;
圖7為本發明實施例三的業務控制裝置的結構圖。
具體實施方式
下面將結合附圖和實施例,對本發明的具體實施方式作進一步詳細描述。以下實施例用於說明本發明,但不用來限制本發明的範圍。
如圖1所示,本發明實施例一的業務控制方法,包括:
步驟11、接收用戶的查詢請求。
在本發明實施例中,所述用戶的查詢請求可以包括用戶主動發送的查詢請求以及應用程式自動為用戶發送的查詢請求。如背景技術中所描述的,應用程式自動為用戶發送的查詢請求都是有規律性的,所以,在本發明實施例中,通過對這類的查詢請求進行分析繼而確定應用程式自動為用戶發送的查詢請求的規律,通過是否符合該規律即可判斷用戶的查詢請求是否為用戶主動發送的查詢請求。
其中所述查詢請求可以包括:話費查詢請求,套餐餘量查詢請求,消費詳單查詢請求等等。
步驟12、確定所述查詢請求是否為用戶主動發送的查詢請求。
在此步驟中,可首先獲取業務控制條件。其中所述業務控制條件是對用戶的歷史查詢請求進行分析獲得的。當所述查詢請求與所述業務控制條件匹配時,確定所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求與所述業務控制條件不匹配時,確定所述查詢請求是用戶主動發送的查詢請求。
步驟13、若所述查詢請求是用戶主動發送的查詢請求,則優先響應所述查詢請求;若所述查詢請求不是用戶主動發送的查詢請求,則推遲響應所述查詢請求。
由上可以看出,由於利用本發明實施例的方案可以對用戶的查詢請求進行 區分從而在其為用戶主動發送的查詢請求時優先處理,因此,利用本發明實施例的方案可以保證及時的處理用戶主動發送的業務請求。
以下,結合圖2、圖3所示詳細描述一下本發明實施例二的業務控制方法實現過程。
如圖2所示,本發明實施例二的業務控制方法包括:
步驟21、設置業務控制條件。
在此,所述業務控制條件主要是用於區分用戶主動發送的查詢請求和應用程式自動發送的查詢請求。業務控制條件可以理解為是一些規則,通過將用戶的查詢請求與該規則進行對比,即可確定查詢請求是否為用戶主動發送的查詢請求。
首先結合圖3所示對實施本發明實施例的方法的架構做一簡單介紹。在圖3中,該架構包括分析裝置、監控過濾裝置,同時上述兩裝置結合請求緩衝池對業務進行流控。
在該架構中,分析裝置由行為分析裝置和驗證裝置兩部分組成,前者主要對用戶歷史行為進行分析和歸類,後者對前者的分析結果進行隨機取樣驗證。
其中,在具體應用中,所述行為分析裝置通過對海量用戶歷史行為進行分析,通過波動集匹配的方式,歸納每個用戶的行為規律,區分用戶主動發送的查詢請求和應用程式自動發送的查詢請求,並制定相應過濾規則即業務控制條件。
具體的,行為分析裝置在設置所述業務控制條件的工作過程可包括以下內容:
(1)請求分類:
獲取用戶在預設時間段內的歷史查詢請求,對所述歷史查詢請求進行分析,獲取歷史查詢請求的類型、發送時間。其中,所述預設時間段可任意設置,例如設置為1周。所述歷史查詢請求指的是用戶在該預設時間段內發送的查詢請求,包括用戶主動發送的查詢請求和應用程式自動發送的查詢請求。根據所要查詢內容的不同,在此所述歷史查詢請求可劃分為話費查詢請求,套餐餘量查詢請求,消費詳單查詢請求等等。
(2)波動分析:
通過對歷史查詢請求的類型、發送時間、用戶信息(如手機號)等條件進行分析,對於每一類型的歷史數據,定義連續L天(為對於0的整數,可任意設置,例如設置為7天)的歷史查詢請求的數據集合記作為G,然後根據系統平時業務量的均值制定出業務量閾值AL。如果在某個時間段[t-Δt,t+Δt]內,某個類型的歷史查詢數據的發送頻率大於該閾值,根據該時間段獲得該類型的歷史查詢數據的波峰全集F(T):F(T)={f(t+Δt)≥AL||f(t)≥AL||f(t-Δt)≥AL}。
其中,f(t-Δt)表示在t-Δt時刻的業務量,f(t+Δt)表示在t+Δt時刻的業務量。
(3)行為歸類:
因為各種應用程式會在不同時間段發起查詢請求,因此需要將用戶行為按行為規則分類,將單個用戶請求行為時間集合g={a1,a2,a3,a4……},並與(2)中的波峰進行匹配,其中,單個波峰與單個用戶的時間點匹配關係為:
在此,我們將單個用戶與波峰集的匹配關係為MF(T),將符合同一種匹配關係的用戶定義為用戶集gn,對應波峰集為F(gn)。其中M為常數,其值越接近1表示單個波峰和單個用戶的時間點越為匹配。
(4)設置規則:
若在某個時間段內收到的與每一類型的歷史查詢請求為同類型的查詢請求的數量超過閾值,則將所述歷史查詢請求和所述時間段的對應關係作為所述業務控制條件。也即,如果用戶集gn中的用戶數量大於閾值,則將所述歷史查詢請求和所述時間段的對應關係作為所述業務控制條件。在此閾值可根據實際經驗設置。
在制定了上述規則後,為了保證規則的準確性,在本發明實施例中還可對該規則進行驗證。在本發明實施例中,主要是利用DPI(Deep Packet Inspection,深度包檢測技術)對制定的規則進行驗證。
深度包檢測技術是一種基於應用層的流量檢測和控制技術,當IP數據包、TCP(Transmission Control Protocol,傳輸控制協議)或UDP(User Data Protocol,用戶數據報協議)數據流通過基於DPI技術的帶寬管理系統時,該系統通過 深入讀取IP(Internet Protocol,網際網路協議)包載荷的內容來對OSI(Open System Interconnection,開放式系統互連)七層協議中的應用層信息進行重組,從而得到整個應用程式的內容,然後按照系統定義的管理策略對流量進行整形操作。DPI技術是在傳統IP數據包檢測技術(OSI L2-L4之間包含的數據包元素的檢測分析)之上增加了對應用層數據的應用協議識別,數據包內容檢測與深度解碼。
基於以上原理,在本方案中,如圖4所示,在對制定的規則進行驗證時,通過隨機抽取待驗證的任一規則的用戶若干,並抽取用戶在一段時間內的流量數據。通過DPI技術對抽取的用戶流量數據進行分析並與預存的軟體特徵庫比較,得到用戶移動終端安裝的應用程式的信息,並進行匹配驗證。通過此匹配驗證,能進一步保證制定的規則的準確性。
圖3所示架構中的監控過濾模塊用於存儲分析裝置模塊中制定的規則。監控過濾模塊在對用戶即時的查詢請求添加標記後,將該查詢請求送入請求緩衝池中進行處理,該裝置工作原理如下:
(1)採用離線分析處理的方式監控,每日凌晨定時進行緩存數據更新。不斷利用新的規則更新業務控制條件資料庫,保證數據實時性。
(2)對新設定的規則,制定未啟用標誌,通過DPI驗證且人工啟用後,正式進行作為正式的規則。
(3)系統接收到用戶的查詢請求時進行過濾。當查詢請求被判為符合已存在的規則時,對該查詢請求加入標記,若不符合現存規則,則加入空白標記。將所有查詢請求均存入請求緩衝池,進行相應處理。
為了實現對用戶查詢請求的區別應答,如圖5所示,在請求緩衝池中對用戶的查詢請求進行優先級的劃分,並建立多個優先級的處理隊列。利用業務緩衝模塊在極短時間內對用戶的查詢請求進行暫存,並區分優先級後將其存入相應處理模塊進行處理。對於匹配規則的用戶查詢請求,降低此列用戶查詢請求的優先級。對於未匹配規則的用戶查詢請求,利用惡意攻擊探測器進行探測,如果單一用戶在業務緩衝模塊中同一類請求超過設定閾值,則降低此類用戶查詢請求的優先級。在本發明實施例中,為被降低優先級的用戶查詢請求建立單獨處理隊列,利用隊列空閒探測器對各隊列進行探測,發現有空餘資源時,則 從對應的緩衝表中提取查詢請求進行處理。通過針對不同的優先級業務實現不同的配置,從而實現區別服務,也保障了系統的穩定運行。
步驟22、接收用戶的查詢請求。
步驟23、確定所述查詢請求是否為用戶主動發送的查詢請求。
此步驟包括:步驟231、獲取查詢請求的類型和用戶的號碼、時間;步驟232、確定用戶的查詢請求是否符合已設置的規則。具體的,根據步驟21中制定的各個業務控制條件,當所述查詢請求的發送時間與對應的業務控制條件的時間段匹配時,則所述查詢請求不是用戶主動發送的查詢請求,執行步驟24;當所述查詢請求的發送時間與對應的業務控制條件的時間段不匹配時,所述查詢請求是用戶主動發送的查詢請求,執行步驟25-28。
步驟24、將所述查詢請求存入到緩衝模塊中,若探測到第二優先級隊列中有空閒資源時則處理該查詢請求。
步驟25、為所述查詢請求添加標識。
步驟26、將所述查詢請求存入到緩衝模塊中。
步驟27、判斷在一個較短的時間段內該用戶的同一類型的查詢請求是否超過預設值。該較短的時間可以任意設置,例如為1分鐘等。
若是則將所述查詢請求存入到緩衝模塊中,若探測到第二優先級隊列中有空閒資源時則處理該查詢請求。若否,則將所述查詢請求存入第一優先級處理隊列。通過此種方式,可實現對惡意攻擊識別和流量的有效控制。
其中所述第一優先級處理隊列的優先級高於所述第二優先級處理隊列的優先級。
步驟28、探測各個優先級隊列的運行狀況,若探測到空閒資源時,從對應的緩衝模塊中提取數據進行處理。
步驟29、線程池並行處理、解析各個查詢請求。
步驟210、調用外圍接口,向用戶發送回覆信息。
在步驟29進行處理的同時,系統還可將用戶的查詢請求作為歷史查詢請求,作進一步的行為分析和規則的制定。
具體的,按照步驟21中的描述對用戶的查詢請求進行行為分析、規則制定和修改、DPI驗證、更新規則並啟用,最後將用戶的信息和對應的規則存入 到業務控制條件資料庫中。
由上可以看出,由於利用本發明實施例的方案可以對用戶的查詢請求進行區分從而在其為用戶主動發送的查詢請求時優先處理,因此,利用本發明實施例的方案可以保證及時的處理用戶主動發送的業務請求。
如圖6所示,本發明實施例三的業務控制裝置,包括:
接收單元51,用於接收用戶的查詢請求;確定單元52,用於確定所述查詢請求是否為用戶主動發送的查詢請求;處理單元53,用於在所述查詢請求是用戶主動發送的查詢請求時,則優先響應所述查詢請求;在所述查詢請求不是用戶主動發送的查詢請求時,則推遲響應所述查詢請求。
其中,所述確定單元52可包括:獲取模塊,用於獲取業務控制條件;確定模塊,用於當所述查詢請求與所述業務控制條件匹配時,確定所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求與所述業務控制條件不匹配時,確定所述查詢請求是用戶主動發送的查詢請求。
如圖7所示,所述裝置還包括:設置單元54,用於設置所述業務控制條件。具體的,所述設置單元54包括:獲取模塊,用於獲取所述用戶在預設時間段內的歷史查詢請求;分析模塊,用於對所述歷史查詢請求進行分析,獲取所述歷史查詢請求的類型、發送時間;統計模塊,用於根據每一類型的歷史查詢請求的發送時間確定每一類型的歷史查詢請求的發送頻率超過預設值時的時間段;設置模塊,用於當在所述時間段內收到的與每一類型的歷史查詢請求為同類型的查詢請求的數量超過閾值時,則將所述歷史查詢請求和所述時間段的對應關係作為所述業務控制條件。
其中,所述確定模塊具體用於:當所述查詢請求的發送時間與對應的業務控制條件的時間段匹配時,則所述查詢請求不是用戶主動發送的查詢請求;當所述查詢請求的發送時間與對應的業務控制條件的時間段不匹配時,所述查詢請求是用戶主動發送的查詢請求。
再如圖7所示,為了保證數據的及時性和指定的業務控制條件的準確性,所述裝置還包括:更新單元55,用於利用所述業務控制條件更新業務控制條件資料庫;和/或驗證單元56,用於對所述業務控制條件進行驗證。
具體的,所述處理單元53具體用於:在所述查詢請求是用戶主動發送的 查詢請求時,將所述查詢請求存入第一優先級處理隊列;在所述查詢請求不是用戶主動發送的查詢請求時,將所述查詢請求存入第二優先級處理隊列;
其中所述第一優先級處理隊列的優先級高於所述第二優先級處理隊列的優先級。
此外,所述處理單元53還用於:在所述查詢請求是用戶主動發送的查詢請求時,在預設時間內獲取所述查詢請求的數量;若所述查詢請求的數量在預設時間內超過預設閾值時,將所述用戶主動發送的查詢請求存入所述第二優先級處理隊列。以及,所述處理單元53還用於:在所述查詢請求是用戶主動發送的查詢請求時,為所述查詢請求添加標識。
其中,本發明實施例所述裝置的工作原理可參照前述方法實施例的描述。
由上可以看出,由於利用本發明實施例的方案可以對用戶的查詢請求進行區分從而在其為用戶主動發送的查詢請求時優先處理,因此,利用本發明實施例的方案可以保證及時的處理用戶主動發送的業務請求。
以上所述是本發明的優選實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本發明所述原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護範圍。