亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

全局數(shù)據(jù)的存儲、上報方法與裝置和系統(tǒng)的制作方法

文檔序號:8487635閱讀:301來源:國知局
全局數(shù)據(jù)的存儲、上報方法與裝置和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明實施方式涉及信息處理技術(shù)領(lǐng)域,更具體地,涉及一種全局數(shù)據(jù)的存儲與上報方法、裝置和系統(tǒng)。
【背景技術(shù)】
[0002]虛擬機是一種抽象化的計算機,通過在實際的計算機上仿真模擬各種計算機功能來實現(xiàn)的。比如,Java虛擬機(JVM)—種用于計算機設(shè)備的規(guī)范,可用不同的方式(軟件或硬件)加以實現(xiàn)。編譯虛擬機的指令集與編譯微處理器的指令集非常類似。Java虛擬機包括一套字節(jié)碼指令集、一組寄存器、一個棧、一個垃圾回收堆和一個存儲方法域。Java虛擬機(JVM)是可運行Java代碼的假想計算機。只要根據(jù)JVM規(guī)格描述將解釋器移植到特定的計算機上,就能保證經(jīng)過編譯的任何Java代碼能夠在該系統(tǒng)上運行。
[0003]在虛擬機處理大量的二進制數(shù)據(jù)時,目前有三種廣泛的手段,分別包括:(1)、每次用到數(shù)據(jù)的時候,在內(nèi)存中創(chuàng)建,用完就不再保存,等待虛擬機自動垃圾回收;(2)在java虛擬機啟動時,通過執(zhí)行一段特定的代碼將這些數(shù)據(jù)放入一個全局的緩存中,每次需要使用數(shù)據(jù)時,都從緩存中去取數(shù)據(jù);(3)第一次需要使用數(shù)據(jù)時生成數(shù)據(jù),使用完畢后,把這些數(shù)據(jù)存放到全局的緩存中保存,以后再用到時從全局緩存去取。
[0004]然而,在現(xiàn)有技術(shù)中,全局數(shù)據(jù)長期駐留在虛擬機的堆內(nèi)存中,無法回避垃圾回收的問題。在業(yè)務(wù)高峰期,虛擬機垃圾回收的頻率很高,而全局緩存數(shù)據(jù)在每次垃圾回收都會掃描到,但是由于是全局緩存數(shù)據(jù),因此每次掃描都會得到相同的處理結(jié)果(即不回收),這就造成了大量的重復(fù)無用勞動,從而降低了工作效率。

【發(fā)明內(nèi)容】

[0005]本發(fā)明實施方式提出一種全局數(shù)據(jù)的存儲方法,以提高工作效率。
[0006]本發(fā)明實施方式還提出了一種全局數(shù)據(jù)的存儲裝置,以提高工作效率。
[0007]本發(fā)明實施方式還提出了一種全局數(shù)據(jù)的上報方法,以提高工作效率。
[0008]本發(fā)明實施方式還提出了一種全局數(shù)據(jù)的上報裝置,以提高工作效率。
[0009]本發(fā)明實施方式還提出了一種微博開發(fā)者平臺的上報系統(tǒng),以提高工作效率。
[0010]本發(fā)明實施方式的具體方案如下:
[0011]一種全局數(shù)據(jù)的存儲方法,該方法包括:
[0012]生成待存儲的全局數(shù)據(jù);
[0013]聲明靜態(tài)變量,并以數(shù)組形式將所述待存儲全局數(shù)據(jù)賦值給所述靜態(tài)變量;
[0014]將所述賦值后的靜態(tài)變量存儲在虛擬機的方法區(qū)。
[0015]一種全局數(shù)據(jù)的存儲裝置,包括全局數(shù)據(jù)生成單元、賦值單元和存儲單元,其中:
[0016]全局數(shù)據(jù)生成單元,用于生成待存儲的全局數(shù)據(jù);
[0017]賦值單元,用于聲明靜態(tài)變量,以數(shù)組形式將所述待存儲全局數(shù)據(jù)賦值給所述靜態(tài)變量;
[0018]存儲單元,用于將所述賦值后的靜態(tài)變量存儲在虛擬機的方法區(qū)。
[0019]一種全局數(shù)據(jù)的上報方法,包括:
[0020]生成待存儲的全局數(shù)據(jù);
[0021]聲明靜態(tài)變量,并以數(shù)組形式將所述待存儲全局數(shù)據(jù)賦值給所述靜態(tài)變量;
[0022]將所述賦值后的靜態(tài)變量存儲在虛擬機的方法區(qū);
[0023]從所述虛擬機的方法區(qū)中調(diào)取所述靜態(tài)變量的值,并發(fā)送所述靜態(tài)變量的值。
[0024]一種全局數(shù)據(jù)的上報裝置,包括:
[0025]全局數(shù)據(jù)生成單元,用于生成待存儲的全局數(shù)據(jù);
[0026]賦值單元,用于聲明靜態(tài)變量,并以數(shù)組形式將所述待存儲全局數(shù)據(jù)賦值給所述靜態(tài)變量;
[0027]存儲單元,用于將所述賦值后的靜態(tài)變量存儲在虛擬機的方法區(qū);
[0028]數(shù)據(jù)調(diào)取單元,用于從所述虛擬機的方法區(qū)中調(diào)取所述靜態(tài)變量的值,并發(fā)送所述靜態(tài)變量的值。
[0029]一種微博開發(fā)者平臺的上報系統(tǒng),包括微博開發(fā)者平臺和檢測系統(tǒng),其中:
[0030]微博開發(fā)者平臺,用于生成待存儲的運行維護全局數(shù)據(jù),聲明靜態(tài)變量,以數(shù)組形式將所述待存儲的運行維護全局數(shù)據(jù)賦值給所述靜態(tài)變量;將所述賦值后的靜態(tài)變量存儲在所述微博開發(fā)者平臺的虛擬機的方法區(qū)中;從所述虛擬機的方法區(qū)中調(diào)取所述靜態(tài)變量的值,并發(fā)送所述靜態(tài)變量的值;
[0031]檢測系統(tǒng),用于接收所述靜態(tài)變量的值,其中所述靜態(tài)變量的值包括數(shù)組形式的用戶數(shù)據(jù)包協(xié)議包頭和上報屬性值,從所述靜態(tài)變量的值中提取出上報屬性值;并基于所述上報屬性值統(tǒng)計所述對應(yīng)于上報屬性的操作數(shù)
[0032]從上述技術(shù)方案可以看出,在本發(fā)明實施方式中,生成待存儲的全局數(shù)據(jù);聲明靜態(tài)變量,并以數(shù)組形式將所述待存儲全局數(shù)據(jù)賦值給所述靜態(tài)變量;將所述賦值后的靜態(tài)變量存儲在虛擬機的方法區(qū)。由此可見,本發(fā)明實施方式通過將全局數(shù)據(jù)轉(zhuǎn)成靜態(tài)變量聲明,使這些全局數(shù)據(jù)駐留在虛擬機的方法區(qū),避免了堆內(nèi)存的垃圾回收對性能造成的損耗,從而提高了工作效率。
【附圖說明】
[0033]圖1為根據(jù)本發(fā)明實施方式全局數(shù)據(jù)的存儲方法流程圖;
[0034]圖2為根據(jù)本發(fā)明實施方式的虛擬機內(nèi)存結(jié)構(gòu)圖;
[0035]圖3為根據(jù)本發(fā)明實施方式全局數(shù)據(jù)的存儲裝置結(jié)構(gòu)圖;
[0036]圖4為根據(jù)本發(fā)明實施方式全局數(shù)據(jù)的上報方法流程圖;
[0037]圖5為根據(jù)本發(fā)明實施方式全局數(shù)據(jù)的上報裝置結(jié)構(gòu)圖;
[0038]圖6為本發(fā)明實施方式微博開發(fā)者平臺的上報系統(tǒng)的結(jié)構(gòu)圖;
[0039]圖7為根據(jù)本發(fā)明實施方式微博開發(fā)者平臺的操作統(tǒng)計示意圖。
【具體實施方式】
[0040]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖對本發(fā)明作進一步的詳細描述。
[0041]為了描述上的簡潔和直觀,下文通過描述若干代表性的實施方式來對本發(fā)明的方案進行闡述。實施方式中大量的細節(jié)僅用于幫助理解本發(fā)明的方案。但是很明顯,本發(fā)明的技術(shù)方案實現(xiàn)時可以不局限于這些細節(jié)。為了避免不必要地模糊了本發(fā)明的方案,一些實施方式?jīng)]有進行細致地描述,而是僅給出了框架。下文中,“包括”是指“包括但不限于”,“根據(jù)……”是指“至少根據(jù)……,但不限于僅根據(jù)……”。由于漢語的語言習(xí)慣,下文中沒有特別指出一個成分的數(shù)量時,意味著該成分可以是一個也可以是多個,或可理解為至少一個。
[0042]在現(xiàn)有技術(shù)中,全局數(shù)據(jù)長期駐留在虛擬機的堆內(nèi)存中,無法回避垃圾回收的問題。全局緩存數(shù)據(jù)在每次垃圾回收都會掃描到,但是由于是全局緩存,每次掃描的時候都會得到相同的結(jié)果(即不回收)。這樣就像在掃地的時候發(fā)現(xiàn)地上有些物品,檢查后確定不能掃走,于是繞開。當(dāng)頻繁掃地的時候,每次都要去檢查然后繞開。因此,現(xiàn)有技術(shù)這種存儲全局數(shù)據(jù)的方式造成了大量的重復(fù)無用勞動,從而降低了工作效率。
[0043]參照上述類比的掃地場景,如果這些物品如果一開始就不在地上,那么檢查和繞開的工作也就不必執(zhí)行。因此,本發(fā)明創(chuàng)造性地發(fā)現(xiàn),如果全局數(shù)據(jù)至始至終都沒有出現(xiàn)在堆內(nèi)存中,就可以避免垃圾回收帶來的影響。
[0044]圖1為根據(jù)本發(fā)明實施方式全局數(shù)據(jù)的存儲方法流程圖。
[0045]如圖1所示,該方法包括:
[0046]步驟101:生成待存儲的全局數(shù)據(jù)。
[0047]在這里,全局數(shù)據(jù)可以是用于上報的數(shù)據(jù),而且每種上報都對應(yīng)一個唯一的整型數(shù)字。
[0048]比如,微博開發(fā)者平臺向檢測系統(tǒng)上報的“執(zhí)行查詢”上報數(shù)據(jù)對應(yīng)著19001。
[0049]可以首先準(zhǔn)備一個用于UDP傳輸?shù)陌^,比如:
[0050][0x03, 0x00, 0x01, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00];
[0051]然后,在包頭后面再加上19001的十六進制數(shù)字[0x00,0x4a,0x39],以及其他的一些必要的數(shù)據(jù),最終會組成116字節(jié)的byte型數(shù)組,后續(xù)可以通過UDP協(xié)議將這些數(shù)據(jù)發(fā)送到檢測系統(tǒng),從而完成上報。
[0052]示范性地,微博開發(fā)者平臺向檢測系統(tǒng)上報的屬性可以有多個(比如大約300個),每天的總上報次數(shù)設(shè)置可以高達110萬左右。
[0053]步驟102:聲明靜態(tài)變量,并以數(shù)組形式將所述待存
當(dāng)前第1頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1