本發(fā)明涉及計算機科學
技術(shù)領(lǐng)域:
,具體而言,涉及一種用于處理信息的方法和系統(tǒng)。
背景技術(shù):
:隨著互聯(lián)網(wǎng)的發(fā)展,各種業(yè)務(wù)系統(tǒng)間的信息交互量越來越大,為了保證高可用和高性能,往往同一業(yè)務(wù)由數(shù)十臺服務(wù)器進行支撐。由每臺服務(wù)器將請求的全路徑和攜帶的信息記錄在各自的日志中,并基于每臺服務(wù)器日志進行分析。在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在以下的技術(shù)問題:1、排查問題困難在集群環(huán)境中,每次請求可以隨機訪問到集群中任何一臺服務(wù)器。一旦出現(xiàn)問題,需要登錄到每臺機器進行日志排查,如果存在數(shù)十臺服務(wù)器,每次定位問題都會產(chǎn)生巨大的工作量,嚴重影響工作效率。2、存在安全隱患請求中往往會攜帶一些需要保密的信息,如果將所有信息存放在日志中,給請求造成了安全隱患。3、存在時間延時由于每臺服務(wù)器日志從落地到收集存在時間延遲,對實時性要求高的不能滿足需求。4、需求變動調(diào)整較大當需求變更,需要修改日志中輸出的字段格式,這不能通過簡單配置調(diào)整,需要改動日志解析規(guī)則,增加了工作量。因此,需要一種新的高效的、安全的用于處理信息的方法和系統(tǒng)。在所述
背景技術(shù):
部分公開的上述信息僅用于加強對本發(fā)明的背景的理解,因此它可以包括不構(gòu)成對本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。技術(shù)實現(xiàn)要素:有鑒于此,本發(fā)明提供一種用于處理信息的方法和系統(tǒng),能夠提取出待處理信息,避免將信息存儲到每臺服務(wù)器日志。本發(fā)明的其他特性和優(yōu)點將通過下面的詳細描述變得顯然,或部分地通過本發(fā)明的實踐而習得。根據(jù)本發(fā)明的一方面,提供一種用于處理信息的方法,所述方法包括:接收請求;若所述請求調(diào)用具有標記的方法,提取待處理信息;將所述待處理信息發(fā)送給消費者以進行處理。根據(jù)一些實施例,所述方法還包括:根據(jù)預設(shè)的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系提取待處理信息。根據(jù)一些實施例,所述將所述待處理信息發(fā)送給消費者以進行處理,還包括:將所述待處理信息以及所述對應(yīng)關(guān)系送給消息中間件,以使監(jiān)控所述消息中間件的消費者根據(jù)所述對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。根據(jù)一些實施例,所述方法還包括:將所述待處理信息以及所述對應(yīng)關(guān)系封裝為預定的數(shù)據(jù)格式,并發(fā)送給所述消息中間件,以使所述監(jiān)控所述消息中間件的消費者以所述預定的數(shù)據(jù)格式解析出所述待處理信息以及所述對應(yīng)關(guān)系后,根據(jù)所述對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。根據(jù)一些實施例,所述待處理信息包括:發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息、接收所述請求的本地服務(wù)器的信息以及所述請求處理過程中的異常信息中的至少一種。根據(jù)一些實施例,當所述待處理信息為發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息時,所述方法還包括:從所述請求中提取發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息。根據(jù)一些實施例,當所述待處理信息為所述請求處理過程中的異常信息時,所述方法還包括:檢測所述請求調(diào)用的方法的處理是否異常;如果檢測到所述請求調(diào)用的方法的處理異常,提取所述請求處理過程中的異常信息。根據(jù)本發(fā)明的另一方面,提供一種用于處理信息的系統(tǒng),所述系統(tǒng)包括:接收單元,用于接收請求;提取單元,用于在所述請求調(diào)用具有標記的方法時,根據(jù)提取規(guī)則提取待處理信息;處理單元,用于將所述待處理信息發(fā)送給消費者以進行處理。根據(jù)一些實施例,所述系統(tǒng)還包括:獲取單元,用于根據(jù)預設(shè)的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系獲取提取規(guī)則。根據(jù)一些實施例,所述處理單元,配置為將所述待處理信息以及所述對應(yīng)關(guān)系送給所述消費者,以使所述消費者根據(jù)所述對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。根據(jù)一些實施例,所述待處理信息包括:發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息、接收所述請求的本地服務(wù)器的信息以及所述請求處理過程中的異常信息中的至少一種。本發(fā)明實施例提供的用于處理信息的方法和系統(tǒng)中,通過接收請求;若所述請求調(diào)用具有標記的方法,根據(jù)提取規(guī)則提取待處理信息;將所述待處理信息發(fā)送給消費者以進行處理,實現(xiàn)了靈活的對信息的提取,便于信息的統(tǒng)一管理,提高了信息的安全性和信息處理的效率。附圖說明通過參照附圖詳細描述其示例實施例,本發(fā)明的上述和其它目標、特征及優(yōu)點將變得更加顯而易見。圖1是本發(fā)明實施例提供的一種服務(wù)器集群系統(tǒng)的示意圖。圖2是根據(jù)一示例性實施例示出的用于處理信息的方法的流程圖。圖3是根據(jù)一示例性實施例示出的待處理信息的系統(tǒng)架構(gòu)圖。圖4是根據(jù)一示例性實施例示出的統(tǒng)計數(shù)據(jù)的展示界面的示意圖。圖5是根據(jù)一示例性實施例示出的異常監(jiān)控界面的示意圖。圖6是根據(jù)一示例性實施例示出的處理信息的系統(tǒng)的結(jié)構(gòu)圖。具體實施方式現(xiàn)在將參考附圖更全面地描述示例實施例。然而,示例實施例能夠以多種形式實施,且不應(yīng)被理解為限于在此闡述的實施例;相反,提供這些實施例使得本發(fā)明將全面和完整,并將示例實施例的構(gòu)思全面地傳達給本領(lǐng)域的技術(shù)人員。在圖中相同的附圖標記表示相同或類似的部分,因而將省略對它們的重復描述。此外,所描述的特征、結(jié)構(gòu)或特性可以以任何合適的方式結(jié)合在一個或更多實施例中。在下面的描述中,提供許多具體細節(jié)從而給出對本發(fā)明的實施例的充分理解。然而,本領(lǐng)域技術(shù)人員將意識到,可以實踐本發(fā)明的技術(shù)方案而沒有特定細節(jié)中的一個或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細示出或描述公知方法、裝置、實現(xiàn)或者操作以避免模糊本發(fā)明的各方面。附圖中所示的方框圖僅僅是功能實體,不一定必須與物理上獨立的實體相對應(yīng)。即,可以采用軟件形式來實現(xiàn)這些功能實體,或在一個或多個硬件模塊或集成電路中實現(xiàn)這些功能實體,或在不同網(wǎng)絡(luò)和/或處理器裝置和/或微控制器裝置中實現(xiàn)這些功能實體。附圖中所示的流程圖僅是示例性說明,不是必須包括所有的內(nèi)容和操作/步驟,也不是必須按所描述的順序執(zhí)行。例如,有的操作/步驟還可以分解,而有的操作/步驟可以合并或部分合并,因此實際執(zhí)行的順序有可能根據(jù)實際情況改變。圖1是本發(fā)明實施例提供的一種服務(wù)器集群系統(tǒng)的示意圖。如圖1所示,服務(wù)器集群系統(tǒng)中包括多個業(yè)務(wù)服務(wù)器A、B以及C,以及服務(wù)器集群。用戶可以通過業(yè)務(wù)服務(wù)器發(fā)送請求,負載均衡器將請求分發(fā)給服務(wù)器集群中的本地服務(wù)器進行處理。對于每個本地服務(wù)器來說,其處理過程如下。圖2是根據(jù)一示例性實施例示出的用于處理信息的方法的流程圖。如圖2所示,在S202中,接收請求。根據(jù)示例實施例,本地服務(wù)器可以接收到負載均衡器發(fā)送的請求,但本發(fā)明并不限于此,例如,本地服務(wù)器還可以接收到業(yè)務(wù)服務(wù)器發(fā)送的請求。在S202中,若該請求調(diào)用具有標記的方法,提取待處理信息。需要說明的是,每個本地服務(wù)器均設(shè)置有生產(chǎn)者,該生產(chǎn)者內(nèi)核為一個切面程序,是利用Java語言基于spring框架開發(fā)的web程序。生產(chǎn)者在初始化時加載預設(shè)的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系。根據(jù)示例實施例,提取待處理信息的過程中,可以將本地服務(wù)器中的、請求可能會調(diào)用的方法設(shè)置為切點,并在程序啟動后,掃描所有切點,并在這些切點中織入包含待提取信息的通知后,對這些切點進行偵聽。需要說明的是,本發(fā)明實施例中,可以將所有方法均設(shè)置為切點,這樣當任何一個請求調(diào)用任何一個方法時,均可以提取出所有的待處理信息。需要說明的是,織入通知也就是在這些方法上打上標記,例如,在方法上標注注解@GrabData,該標記可以是用戶自定義的注解,本發(fā)明實施例中,該注解中包含待提取信息。根據(jù)示例實施例,當接收到請求后,如果請求調(diào)用具有標記的方法,則會根據(jù)與所述標記關(guān)聯(lián)的注解中的待處理信息提取待處理信息。需要說明的是,如果請求調(diào)用具有標記的方法,也就是說請求調(diào)用切點,則會觸發(fā)所述切點注入的通知,進而根據(jù)通知中保包含的待提取信息提取待處理信息。根據(jù)該預設(shè)的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系可以提取待處理信息。該待處理信息可以包括但不限于:發(fā)送請求的業(yè)務(wù)服務(wù)器的信息、接收請求的本地服務(wù)器的信息以及請求處理過程中的異常信息中的至少一種。例如,表1為本發(fā)明實施例提供的一個待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系。待處理信息數(shù)據(jù)庫發(fā)送請求的業(yè)務(wù)服務(wù)器的信息數(shù)據(jù)庫字段N接收請求的本地服務(wù)器的信息數(shù)據(jù)庫字段P請求處理過程中的異常信息數(shù)據(jù)庫字段Q表1根據(jù)表1的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系,可以確定需要提取的待處理信息為發(fā)送請求的業(yè)務(wù)服務(wù)器的信息、接收請求的本地服務(wù)器的信息以及請求處理過程中的異常信息。根據(jù)示例實施例,當待處理信息為發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息時,可以從所述請求中提取發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息。例如發(fā)送所述請求的業(yè)務(wù)服務(wù)器的IP信息以及系統(tǒng)的業(yè)務(wù)信息等。根據(jù)示例實施例,當待處理信息為所述請求處理過程中的異常信息時,需要檢測所述請求調(diào)用的方法的處理是否異常,如果檢測到所述請求調(diào)用的方法的處理異常,提取所述請求處理過程中的異常信息。需要注意的是,在請求處理過程中,如果處理異常,才會存在請求處理過程中的異常信息。根據(jù)示例實施例,當待處理信息為接收所述請求的本地服務(wù)器的信息時,由于生產(chǎn)者原本就設(shè)置在本地服務(wù)器上,因此可以直接獲取該本地服務(wù)器的信息。例如,本地服務(wù)器的IP信息、處理所述請求的時間信息等。在S206中,將所述待處理信息發(fā)送給消費者以進行處理。根據(jù)示例實施例,在提取到待處理信息后,可以將所述待處理信息以及所述對應(yīng)關(guān)系送給消息中間件,以使監(jiān)控所述消息中間件的消費者根據(jù)所述對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。需要說明的是,通過消費者將待處理信息存儲到對應(yīng)的數(shù)據(jù)庫,實現(xiàn)了對待處理信息的統(tǒng)一管理。根據(jù)示例實施例,在將待處理信息以及對應(yīng)關(guān)系發(fā)送給消息中間件時,可以將該待處理信息以及該對應(yīng)關(guān)系封裝為預定的數(shù)據(jù)格式之后發(fā)送,消費者對消息中間件進行監(jiān)控,當消息中間件中有消息到達后,消費者以該預定的數(shù)據(jù)格式對消息中間件中的消息進行解析,從而得到所述待處理信息以及所述對應(yīng)關(guān)系,并進一步的,根據(jù)該對應(yīng)關(guān)系,將待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。例如,提取的待處理信息分別為發(fā)送請求的業(yè)務(wù)服務(wù)器的信息A、接收請求的本地服務(wù)器的信息B以及請求處理過程中的異常信息C,在提取到上述待提取信息后,將上述待處理信息以及表1中的對應(yīng)關(guān)系發(fā)送給消費者后,消費者根據(jù)表1中的對應(yīng)關(guān)系,可以將發(fā)送請求的業(yè)務(wù)服務(wù)器的信息A存儲到數(shù)據(jù)庫字段N,將接收請求的本地服務(wù)器的信息B存儲到數(shù)據(jù)庫字段P,將請求處理過程中的異常信息C存儲到數(shù)據(jù)庫字段Q。根據(jù)示例實施例,可以將待處理信息以及所述對應(yīng)關(guān)系封裝為預定的數(shù)據(jù)格式,并發(fā)送給消息中間件,以使消息中間件以該預定的數(shù)據(jù)格式解析出待處理信息以及對應(yīng)關(guān)系后,根據(jù)該對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。本發(fā)明實施例中,提供了數(shù)據(jù)庫集群來存儲提取出的待處理信息。例如,數(shù)據(jù)庫集群中包括多個數(shù)據(jù)庫1、2和3,根據(jù)表1中的對應(yīng)關(guān)系,可以在數(shù)據(jù)庫1、2和3的數(shù)據(jù)庫字段N中存儲發(fā)送請求的業(yè)務(wù)服務(wù)器的信息,在數(shù)據(jù)庫1、2和3的數(shù)據(jù)庫字段P中存儲接收請求的本地服務(wù)器的信息,在數(shù)據(jù)庫1、2和3的數(shù)據(jù)庫字段Q存儲請求處理過程中的異常信息。對于每個數(shù)據(jù)庫來說,每個數(shù)據(jù)庫的相應(yīng)字段均存儲有對應(yīng)的待處理信息。利用數(shù)據(jù)庫集群中的多個數(shù)據(jù)庫來存儲待處理信息,增加了數(shù)據(jù)庫的存儲容量。需要說明的是,當生產(chǎn)者再次提取了待處理信息時,消費者依然可以根據(jù)待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系,將待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。此時可以將待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系與待處理信息進行封裝,并發(fā)送給消息中間件,由消費者解析出待處理信息以及所述對應(yīng)關(guān)系后,將待處理信息存儲到數(shù)據(jù)庫?;蛘撸梢灾粚⒋幚硇畔⑦M行封裝,并利用之前的對應(yīng)關(guān)系將待處理信息存儲到數(shù)據(jù)庫。需要注意的是,本發(fā)明實施例中的消息中間件,可以是消息隊列,在傳輸壓力增大時,可以使用消息隊列集群方式來存儲待處理信息,該消息隊列集群可以包括至少一個kafka服務(wù)器。從而提高消息中間件的存儲能力。本發(fā)明實施例中的消費者可以是消費者集群,從而提高對待處理信息的處理效率。圖3是根據(jù)一示例性實施例示出的待處理信息的系統(tǒng)架構(gòu)圖。如圖3所示,生產(chǎn)者將提取出的待處理信息發(fā)送到消息中間件,該消息中間件可以是一個消息隊列集群,該消息隊列集群中包括多個kafka服務(wù)器。監(jiān)控該消息隊列集群的消費者集群可以包括多個消費者,當消費者集群監(jiān)控到消息隊列集群中的kafka服務(wù)器存儲有待處理信息時,從消息隊列集群中提取出該待處理信息,并存儲到包含多個關(guān)系型數(shù)據(jù)庫的數(shù)據(jù)庫集群中。根據(jù)示例實施例,數(shù)據(jù)庫可以包括但不限于關(guān)系型數(shù)據(jù)庫,數(shù)據(jù)庫集群中可以包括但不限于多個關(guān)系型數(shù)據(jù)庫。本發(fā)明實施例提供的用于處理信息的方法和系統(tǒng)中,通過接收請求;若所述請求調(diào)用具有標記的方法,根據(jù)提取規(guī)則提取待處理信息;將所述待處理信息發(fā)送給消費者以進行處理,實現(xiàn)了靈活的對信息的提取,便于信息的統(tǒng)一管理,提高了信息的安全性和信息處理的效率。進一步的,在將待處理信息存儲到數(shù)據(jù)庫中后,可以對數(shù)據(jù)庫中的數(shù)據(jù)進行統(tǒng)計,并展示統(tǒng)計數(shù)據(jù)。在進行統(tǒng)計時,可以通過但不限于按照周期、服務(wù)器的IP地址來進行統(tǒng)計。例如,圖4是根據(jù)一示例性實施例示出的統(tǒng)計數(shù)據(jù)的展示界面的示意圖。如圖4所示,可以按照不同周期來統(tǒng)計多臺服務(wù)器(不同的IP地址)被訪問的數(shù)據(jù)。更進一步的,可以根據(jù)數(shù)據(jù)庫中的數(shù)據(jù)展示異常監(jiān)控頁面。從而可以快速定位集群中眾多服務(wù)器哪臺出了問題。例如,圖5是根據(jù)一示例性實施例示出的異常監(jiān)控界面的示意圖。本發(fā)明實施中,實現(xiàn)了靈活、實時、高效、安全地對信息的提取,而且將需要監(jiān)控的數(shù)據(jù)統(tǒng)一存儲到關(guān)系型數(shù)據(jù)庫中,并且通過視圖報表展示數(shù)據(jù),方便了對集群中各個系統(tǒng)的狀態(tài)進行監(jiān)控,以及對業(yè)務(wù)系統(tǒng)調(diào)用服務(wù)的情況的統(tǒng)計。當服務(wù)器出現(xiàn)異常時,能夠快速定位到問題服務(wù)器,降低了人力成本,提高了故障排查的效率。應(yīng)清楚地理解,上述實施例中詳細說明了用于處理信息的方法,但本發(fā)明的原理不限于這些示例的任何細節(jié)。相反,基于本發(fā)明公開的內(nèi)容的教導,這些原理能夠應(yīng)用于許多其它實施例。下述為本發(fā)明系統(tǒng)實施例,可以用于執(zhí)行本發(fā)明方法實施例。在下文對系統(tǒng)的描述中,與前述方法相同的部分,將不再贅述。圖6是根據(jù)一示例性實施例示出的處理信息的系統(tǒng)的結(jié)構(gòu)圖。如圖6所示,本發(fā)明實施例提供的處理信息的系統(tǒng)60,可以包括:接收單元610,用于接收請求;提取單元620,用于在所述請求調(diào)用具有標記的方法時,根據(jù)提取規(guī)則提取待處理信息;處理單元630,用于將所述待處理信息發(fā)送給消費者以進行處理。根據(jù)一些實施例,所述系統(tǒng)還包括:獲取單元640,用于根據(jù)預設(shè)的待處理信息與數(shù)據(jù)庫的對應(yīng)關(guān)系獲取提取規(guī)則。根據(jù)一些實施例,所述處理單元630,配置為將所述待處理信息以及所述對應(yīng)關(guān)系送給所述消費者,以使所述消費者根據(jù)所述對應(yīng)關(guān)系將所述待處理信息存儲到對應(yīng)的數(shù)據(jù)庫。根據(jù)一些實施例,所述待處理信息包括:發(fā)送所述請求的業(yè)務(wù)服務(wù)器的信息、接收所述請求的本地服務(wù)器的信息以及所述請求處理過程中的異常信息中的至少一種。本發(fā)明實施例提供的用于處理信息的方法和系統(tǒng)中,通過接收請求;若所述請求調(diào)用具有標記的方法,根據(jù)提取規(guī)則提取待處理信息;將所述待處理信息發(fā)送給消費者以進行處理,實現(xiàn)了靈活的對信息的提取,便于信息的統(tǒng)一管理,提高了信息的安全性和信息處理的效率。以上具體地示出和描述了本發(fā)明的示例性實施例。應(yīng)可理解的是,本發(fā)明不限于這里描述的詳細結(jié)構(gòu)、設(shè)置方式或?qū)崿F(xiàn)方法;相反,本發(fā)明意圖涵蓋包含在所附權(quán)利要求的精神和范圍內(nèi)的各種修改和等效設(shè)置。當前第1頁1 2 3