欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種用于分布式環(huán)境下的日志記錄方法和設(shè)備的制作方法

文檔序號:7768224閱讀:425來源:國知局
專利名稱:一種用于分布式環(huán)境下的日志記錄方法和設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般地涉及分布式系統(tǒng),更特別地,涉及一種用于分布式環(huán)境下的日志記錄方法和設(shè)備。
背景技術(shù)
日志在實際應(yīng)用中具有重要的意義。它有助于發(fā)現(xiàn)系統(tǒng)中存在的問題,以改進(jìn)產(chǎn)品的質(zhì)量。如果對日志進(jìn)行更深層次的挖掘,還可以了解用戶的潛在需求,為產(chǎn)品開發(fā)者提供指導(dǎo)。在大流量、高并發(fā)的分布式系統(tǒng)中,每天會產(chǎn)生大量的日志數(shù)據(jù)。以某WAP站點為例,該WAP站點具有大約10臺計算機(jī)。每天每臺計算機(jī)產(chǎn)生的訪問日志就多達(dá)大約5GB,再加上其他的統(tǒng)計日志,這個數(shù)量是非常龐大的。圖1是現(xiàn)有技術(shù)的分布式系統(tǒng)100的結(jié)構(gòu)示意圖。分布式系統(tǒng)100可以包括日志服務(wù)器101、客戶端集群102-1,. . .,102-N以及統(tǒng)計服務(wù)器103。日志服務(wù)器101用于收集客戶端集群102-1,. ..,102-N的日志信息。每個客戶端集群102通常是具有相同屬性(例如,對應(yīng)于同一業(yè)務(wù))的多個計算機(jī)的集合。統(tǒng)計服務(wù)器103用于對日志信息進(jìn)行統(tǒng)計分析。當(dāng)前,客戶端集群102-1,...,102-N白天正常處理日常業(yè)務(wù)。在夜間訪問量較少時,由日志服務(wù)器101將客戶端集群102-1,. . .,102-N的日志復(fù)制到統(tǒng)計服務(wù)器103,再由統(tǒng)計服務(wù)器103進(jìn)行合并分析。其中,為了復(fù)制日志,日志服務(wù)器101首先向客戶端集群 102-1,...,102-N發(fā)送消息,以表明其需要復(fù)制日志。響應(yīng)于接收到日志服務(wù)器101發(fā)來的表明其需要復(fù)制日志的消息,客戶端集群102-1,...,102-N將日志發(fā)送給日志服務(wù)器101。應(yīng)當(dāng)注意,圖1只是示例性的,實際的分布式系統(tǒng)可以包括更多的設(shè)備,日志服務(wù)器數(shù)量、統(tǒng)計服務(wù)器數(shù)量以及每個客戶端集群所包括的計算機(jī)數(shù)量也可以與所示出的不同。隨著業(yè)務(wù)的不斷擴(kuò)張和用戶的不斷增長,站點的訪問量也越來越大。在此情況下, 無法在規(guī)定的時間內(nèi)將日志復(fù)制到統(tǒng)計服務(wù)器,從而致使了日志統(tǒng)計的不準(zhǔn)確。因此,需要一種能夠克服上述問題的日志記錄方法和設(shè)備。

發(fā)明內(nèi)容
根據(jù)本發(fā)明的一個方面,提供了一種用于分布式環(huán)境下的日志記錄方法,包括以下步驟配置日志服務(wù)器和客戶端的日志策略;實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器;以及按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲。根據(jù)本發(fā)明的另一方面,提供了一種用于分布式環(huán)境下的日志記錄設(shè)備,包括用于配置日志服務(wù)器和客戶端的日志策略的裝置;用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的裝置;以及用于按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲的裝置。
本發(fā)明能夠提供高并發(fā)、大容量的日志服務(wù)。同時,其系統(tǒng)易擴(kuò)展,能夠滿足各種不同的需求。本發(fā)明對客戶端語言沒有任何限制,可以滿足各種環(huán)境的需求。此外,本發(fā)明還能充分利用帶寬。


根據(jù)以下參照附圖對本發(fā)明實施例的詳細(xì)描述,本發(fā)明的其他目的、特征、應(yīng)用和優(yōu)點將變得明顯,其中相同的參考標(biāo)號代表相同或相應(yīng)的組件或步驟,其中圖1是現(xiàn)有技術(shù)的分布式系統(tǒng)100的結(jié)構(gòu)示意圖;圖2是現(xiàn)有技術(shù)的日志記錄方法200的流程圖;圖3是根據(jù)本發(fā)明優(yōu)選實施例的分布式系統(tǒng)300的結(jié)構(gòu)示意圖;圖4是根據(jù)本發(fā)明優(yōu)選實施例的用于分布式環(huán)境下的日志記錄方法400的示意性流程圖;以及圖5是根據(jù)本發(fā)明優(yōu)選實施例的用于分布式環(huán)境下的日志記錄設(shè)備500的示意性框圖。
具體實施例方式下面結(jié)合具體實施例對本發(fā)明進(jìn)行詳細(xì)描述。圖2是現(xiàn)有技術(shù)的日志記錄方法200的流程圖。方法200開始于步驟201。在步驟 201中,分別在客戶端集群102-1,. . .,102-N本地存儲日志。在步驟202中,日志服務(wù)器101 向客戶端集群102-1,. . .,102-N發(fā)送消息,以表明其需要復(fù)制日志。在步驟203中,響應(yīng)于接收到日志服務(wù)器101發(fā)來的表明其需要復(fù)制日志的消息,客戶端集群102-1,..., 102-N 將日志發(fā)送給日志服務(wù)器101。在步驟204中,日志服務(wù)器101將客戶端集群102-1,..., 102-N的日志復(fù)制到統(tǒng)計服務(wù)器103。隨后,統(tǒng)計服務(wù)器103可以對這些日志進(jìn)行統(tǒng)計分析。圖3是根據(jù)本發(fā)明的優(yōu)選實施例的分布式系統(tǒng)300的結(jié)構(gòu)示意圖。分布式系統(tǒng)300 可以包括日志服務(wù)器301、客戶端集群302-1,...,302-N以及統(tǒng)計服務(wù)器303。其中,日志服務(wù)器301可以位于圖1所示的日志服務(wù)器101中,客戶端集群302-1,. . .,302-N中的每個客戶的可分別位于圖1所示的客戶端集群102-1,..., 102-N中的每臺計算機(jī)上,統(tǒng)計服務(wù)器303可以與圖1所示的統(tǒng)計服務(wù)器103是同一個。參見圖1可知,分布式系統(tǒng)300的物理結(jié)構(gòu)與分布式系統(tǒng)100的物理結(jié)構(gòu)可以是相同的。圖3所示的日志服務(wù)器301可以包括接收器3011、分發(fā)器3012、DB(數(shù)據(jù)庫)并
存儲有若干文件。應(yīng)當(dāng)注意,圖3只是示例性的,實際的分布式系統(tǒng)300可以包括更多的設(shè)備,日志服務(wù)器數(shù)量、統(tǒng)計服務(wù)器數(shù)量以及每個客戶端集群所包括的客戶端數(shù)量也可以與所示出的不同。圖4是根據(jù)本發(fā)明優(yōu)選實施例的用于分布式環(huán)境下的日志記錄方法400的示意性流程圖。方法400開始于步驟401。在步驟401中,配置日志服務(wù)器和客戶端的日志策略。 完成對日志服務(wù)器和客戶端的配置后,方法400進(jìn)行到步驟402。在步驟402中,實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器。接著,方法400進(jìn)行到步驟403。在步驟403中,按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲。分布式日志服務(wù)可以采用CS (客戶端/服務(wù)器)架構(gòu),其分別提供了如圖3所示的日志服務(wù)器301與客戶端302。日志策略可以設(shè)置自定義的日志輸出格式和日志滾動周期,根據(jù)不同模塊的需求自定義合適的日志輸出級別及存儲方式。根據(jù)本發(fā)明的優(yōu)選實施例,所述日志策略可以包括日志文件存儲名稱、格式和滾動周期中的至少一個。所述日志策略可以體現(xiàn)為配置文件??蛻舳?02提供了不同的編程語言版本,可以運行在不同的操作系統(tǒng)和計算機(jī)架構(gòu)上。無論部署環(huán)境如何,這些應(yīng)用的源碼都是可移植的??蛻舳?02采用AMI (異步方法調(diào)用)發(fā)出遠(yuǎn)地調(diào)用,從而使得發(fā)出調(diào)用的線程不會阻塞??蛻舳?02需要提供日志服務(wù)器301為其所配置的名字。例如 remoteLoggerName = wap_useraccess日志服務(wù)器301可以采用AMD (異步方法分派)技術(shù)。當(dāng)日志服務(wù)器301接收到一個請求時,接收器3011通常會把請求數(shù)據(jù)放入隊列,供分發(fā)器3012隨后處理用。這樣, 日志服務(wù)器301就使接收器3011所使用的分派線程的使用率降到了最低限度,能夠高效地
支持高并發(fā)客戶。分發(fā)器3012會從隊列中取出相應(yīng)的請求數(shù)據(jù),然后根據(jù)配置文件中的規(guī)則將數(shù)據(jù)加工處理,放入到相應(yīng)的文件或者數(shù)據(jù)庫中。分發(fā)器3012的配置文件主要有Logger和Appender。Logger的名字應(yīng)與相應(yīng)的客戶端302的配置一致。Appender則為根據(jù)不同規(guī)則來處理加工日志數(shù)據(jù)和存放日志數(shù)據(jù)的真正執(zhí)行者。 可以根據(jù)具體的規(guī)則來實現(xiàn)Appender接口的不同子類,從而實現(xiàn)具體需求。換言之,根據(jù)本發(fā)明的分布式系統(tǒng)具有很強(qiáng)的可擴(kuò)展性。例如,DaiIyRolIingFiIeAppender,如果為其配置了以下屬性File = “ /data/logs/useraccess. log" ,DatePattern = “ ‘ . ‘ yyyy-MM-dd“則日志會以天(滾動周期)為單位被轉(zhuǎn)存至文件/data/logs/useraccess. log,并以“年-月-日”格式的后綴來保存。在圖1和圖2所示的現(xiàn)有技術(shù)中,由于要避開白天的高峰,往往需要用凌晨的低峰時段進(jìn)行日志的同步(即復(fù)制)二4小時下來,數(shù)GB的日志同步也是風(fēng)險很高的操作。然而,根據(jù)本發(fā)明,只要客戶端302產(chǎn)生日志,就可以主動將其發(fā)送到日志服務(wù)器301,實現(xiàn)了應(yīng)用分布而日志集中。此外,由于日志的發(fā)送是由客戶端302主動發(fā)起,不再需要日志服務(wù)器首先發(fā)送表明其需要復(fù)制日志的消息,因此減少了客戶端與日志服務(wù)器的消息往來,減少了傳輸開銷??蛻舳?02將所產(chǎn)生的日志實時地發(fā)送給日志服務(wù)器301之后,也可以在本地保留該日志的備份。但是,在客戶端302不本地保留日志備份的情況下,可以一定程度上節(jié)省客戶端302的存儲資源。根據(jù)本發(fā)明的優(yōu)選實施例,客戶端302可以通過TCP (傳輸控制協(xié)議)長連接與日志服務(wù)器301進(jìn)行通信,從而向日志服務(wù)器301發(fā)送日志。但是,由于日志服務(wù)的可靠性要求并不是很高,即使有少量數(shù)據(jù)丟失,也是可以接受的。因此,客戶端302也可以通過 UDP (用戶數(shù)據(jù)報協(xié)議)來與日志服務(wù)器301進(jìn)行通信。在客戶端302通過UDP協(xié)議來與日志服務(wù)器301進(jìn)行通信的情況下,由于并不需要日志服務(wù)器的確認(rèn),進(jìn)一步減少了傳輸開銷。如上所述,日志服務(wù)器301采用AMD (異步方法分派)技術(shù)。當(dāng)日志服務(wù)器301接收到一個請求時,接收器3011通常會把請求數(shù)據(jù)放入隊列,供分發(fā)器3012隨后處理用。這樣,日志服務(wù)器301就使接收器3011所使用的分派線程的使用率降到了最低限度,能夠高效地支持高并發(fā)客戶。分發(fā)器3012會從隊列中取出相應(yīng)的請求數(shù)據(jù),然后根據(jù)配置文件中的規(guī)則將數(shù)據(jù)加工處理,放入到相應(yīng)的文件或者數(shù)據(jù)庫中。AMD技術(shù)使得不需要立即對接收到的日志進(jìn)行處理,而可以在日志服務(wù)器空閑時再進(jìn)行處理,從而能夠更有效地利用服務(wù)器資源。如圖3所示,日志服務(wù)器301也可以連接到統(tǒng)計服務(wù)器303并將日志發(fā)送給統(tǒng)計服務(wù)器303,由其對這些日志進(jìn)行統(tǒng)計分析。這樣,本發(fā)明的方法能夠?qū)θ罩具M(jìn)行統(tǒng)一的集中式的管理和分析,從而減少了分布式環(huán)境下日志合并和網(wǎng)絡(luò)傳輸帶來的開銷。使用了上述遠(yuǎn)程日志后,日志被實時地發(fā)送至日志服務(wù)器。日志服務(wù)器會根據(jù)客戶端屬性將同業(yè)務(wù)的日志實時地合并至一起,可以根據(jù)業(yè)務(wù)需求實時地對日志進(jìn)行分析, 按照小時、天等時間對日志進(jìn)行分割打包壓縮。從而減少了夜間的機(jī)群服務(wù)器網(wǎng)絡(luò)壓力和數(shù)據(jù)的冗余。圖5是根據(jù)本發(fā)明優(yōu)選實施例的用于分布式環(huán)境下的日志記錄設(shè)備500的示意性框圖。日志記錄設(shè)備500包括用于配置日志服務(wù)器和客戶端的日志策略的裝置501、用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的裝置502以及用于按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲的裝置503。根據(jù)本發(fā)明的優(yōu)選實施例,所述用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的裝置通過TCP長連接來實現(xiàn)所述發(fā)送。根據(jù)本發(fā)明的優(yōu)選實施例,所述用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的設(shè)備通過UDP協(xié)議來實現(xiàn)所述發(fā)送。根據(jù)本發(fā)明的優(yōu)選實施例,所述日志策略包括日志文件存儲名稱、格式和滾動周期中的至少一個。本發(fā)明可以不需要對現(xiàn)有技術(shù)的分布式系統(tǒng)的物理結(jié)構(gòu)進(jìn)行改變,而只需要在現(xiàn)有的日志服務(wù)器設(shè)備和客戶端設(shè)備的應(yīng)用中增添相應(yīng)的模塊,其可以是相應(yīng)的硬件模塊, 也可以僅僅是一小段軟件代碼。因此,本發(fā)明實現(xiàn)簡單,成本低廉。此外,本發(fā)明對客戶端語言沒有任何限制,因此具有很高的可移植性。本發(fā)明可以采取完全硬件實現(xiàn)、完全軟件實現(xiàn)或者同時包含硬件單元和軟件單元的實現(xiàn)的形式。在優(yōu)選的實施例中,本發(fā)明是以軟件實現(xiàn)的,該軟件包括但不限于固件、駐留軟件、微代碼等。此外,本發(fā)明可以采取可從計算機(jī)可用介質(zhì)或計算機(jī)可讀介質(zhì)訪問的計算機(jī)程序產(chǎn)品的形式,該介質(zhì)提供程序代碼以供計算機(jī)或任意指令執(zhí)行系統(tǒng)使用或者結(jié)合計算機(jī)或任意指令執(zhí)行系統(tǒng)而使用。出于本描述的目的,計算機(jī)可用介質(zhì)或計算機(jī)可讀介質(zhì)可以是任意切實可行的裝置,其可以包含、存儲、傳送、傳播或傳輸程序以供計算機(jī)或任意指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或者結(jié)合計算機(jī)或任意指令執(zhí)行系統(tǒng)、裝置或設(shè)備而使用。
在前面的詳細(xì)描述中,參考了形成該描述的一部分的附圖,其中通過圖示示出了可以實現(xiàn)本發(fā)明的特定實施例。上面已經(jīng)充分詳細(xì)地描述了這些實施例及其某些變型,以便本領(lǐng)域的普通技術(shù)人員可以實現(xiàn)本發(fā)明。應(yīng)當(dāng)理解,在不偏離本發(fā)明的本質(zhì)或范圍的情況下,可以采用其他適合的實施例,并且可以進(jìn)行邏輯的、機(jī)械的和電學(xué)的改變。例如,在不偏離本發(fā)明的本質(zhì)或范圍的情況下,可以以任何方式對圖中示出的功能塊進(jìn)行進(jìn)一步的合并或分離。為了避免不必要的細(xì)節(jié),本說明書省略了本領(lǐng)域的普通技術(shù)人員公知的某些信息。因此,以上的詳細(xì)說明并非意在限于在此提出的特定形式,相反,其意在覆蓋可以合理地包括在所附權(quán)利要求的本質(zhì)和范圍內(nèi)的那些變更、修改以及等效形式。
權(quán)利要求
1.一種用于分布式環(huán)境下的日志記錄方法,包括以下步驟配置日志服務(wù)器和客戶端的日志策略;實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器;以及按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲。
2.根據(jù)權(quán)利要求1所述的日志記錄方法,其中所述實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的步驟通過TCP長連接來實現(xiàn)。
3.根據(jù)權(quán)利要求1所述的日志記錄方法,其中所述實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的步驟通過UDP協(xié)議來實現(xiàn)。
4.根據(jù)權(quán)利要求1所述的日志記錄方法,其中所述日志策略包括日志文件存儲名稱、 格式和滾動周期中的至少一個。
5.一種用于分布式環(huán)境下的日志記錄設(shè)備,包括用于配置日志服務(wù)器和客戶端的日志策略的裝置;用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的裝置;以及用于按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲的裝置。
6.根據(jù)權(quán)利要求5所述的日志記錄設(shè)備,其中所述用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的裝置通過TCP長連接來實現(xiàn)所述發(fā)送。
7.根據(jù)權(quán)利要求5所述的日志記錄設(shè)備,其中所述用于實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器的設(shè)備通過UDP協(xié)議來實現(xiàn)所述發(fā)送。
8.根據(jù)權(quán)利要求5所述的日志記錄設(shè)備,其中所述日志策略包括日志文件存儲名稱、 格式和滾動周期中的至少一個。
全文摘要
一種用于分布式環(huán)境下的日志記錄方法,包括以下步驟配置日志服務(wù)器和客戶端的日志策略;實時地將所述客戶端的日志發(fā)送給所述日志服務(wù)器;以及按照所述日志策略對所述日志服務(wù)器接收到的所述日志進(jìn)行存儲。本發(fā)明能夠提供高并發(fā)、大容量的日志服務(wù)。同時,其系統(tǒng)易擴(kuò)展,能夠滿足各種不同的需求。本發(fā)明對客戶端語言沒有任何限制,可以滿足各種環(huán)境的需求。此外,本發(fā)明還能充分利用帶寬。
文檔編號H04L29/06GK102480489SQ20101058033
公開日2012年5月30日 申請日期2010年11月30日 優(yōu)先權(quán)日2010年11月30日
發(fā)明者劉軍, 閆志東 申請人:北京千橡網(wǎng)景科技發(fā)展有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
宾川县| 宣恩县| 祁门县| 涿鹿县| 通州区| 临汾市| 建平县| 黑河市| 宿迁市| 堆龙德庆县| 南部县| 安新县| 闻喜县| 阿坝县| 连州市| 平昌县| 荆州市| 聂荣县| 雷山县| 莱阳市| 阳信县| 宜昌市| 佳木斯市| 新郑市| 新源县| 南澳县| 屏东市| 云浮市| 瑞昌市| 通海县| 平谷区| 石门县| 久治县| 塘沽区| 吉隆县| 洛扎县| 简阳市| 喀喇沁旗| 宜川县| 庐江县| 阿拉善右旗|