成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Coredump 瘦身風(fēng)云

運(yùn)維 系統(tǒng)運(yùn)維
coredump 顧名思義,就是核心轉(zhuǎn)儲(chǔ)。我們的程序在運(yùn)行過程中,如果發(fā)生了異常退出,光靠程序自身log往往是很難定位問題根因的。

[[397137]]

 繼上一篇非典型程序員青囊搞定內(nèi)存泄露問題后,美美地睡了一覺。睡夢中,突然金光閃閃,萬道光芒照進(jìn)時(shí)光隧道,恍惚來到大唐神龍年間。青囊此時(shí)化身狄仁杰高級助理,陪同狄老大和元芳及千牛衛(wèi)來到案發(fā)現(xiàn)場,一番勘察后迅速鎖定真兇。雖整日伏于桌前寫代碼,但早被生活馴服得謹(jǐn)小慎微、擅于察言觀色的青囊亦早已悟透了這斷案的奧秘。

只是,站在一旁的元芳眉頭緊鎖,面露難色......

[[397138]]

狄公上前問道:元芳,有心事?

元芳起身答道:“大人斷案如神,只是像長安這種要案頻繁的地方,每次案發(fā),都要出動(dòng)上百千牛衛(wèi)來大面積封鎖現(xiàn)場,走訪上萬群眾,耗費(fèi)人力不說,還嚴(yán)重阻塞交通,影響了正常的生產(chǎn)秩序,導(dǎo)致其它業(yè)務(wù)部門受損,一直以來是怨聲載道啊。”

狄公笑了笑,手指向青囊,“囊啊,給你元芳哥show一下”。

青囊一陣馬屁之后,從袋中摸出一羅盤,得意道:“我這乾坤袋喚做sysAk,這羅盤叫minicoredump,以后如何封鎖現(xiàn)場,看它就清楚了”。元芳接過羅盤,順手?jǐn)[弄了幾下,上面顯示要封鎖的現(xiàn)場縮小了不少,官道也暢通許多。元芳臉色憂轉(zhuǎn)喜,不禁問道:有此利器,鎖定現(xiàn)場無憂矣!只是它是怎么做到的,還請大人示教一下。

狄公哈哈大笑:“不急,且聽我慢慢道來”。

什么是coredump?

coredump 顧名思義,就是核心轉(zhuǎn)儲(chǔ)。我們的程序在運(yùn)行過程中,如果發(fā)生了異常退出,光靠程序自身log往往是很難定位問題根因的。操作系統(tǒng)提供了一套coredump機(jī)制,在異常發(fā)生的時(shí)候,將進(jìn)程現(xiàn)場的vma信息存儲(chǔ)到core文件中去。利用這個(gè)文件,就能夠恢復(fù)異常現(xiàn)場的信息,定位人員可以從中獲取到變量值、棧信息、內(nèi)存數(shù)據(jù),程序異常時(shí)的運(yùn)行位置(甚至記錄代碼行號)等等,提高問題定位效率。就像斷案最關(guān)鍵的步驟就是去獲取第一手信息,還原案發(fā)現(xiàn)場,在此基礎(chǔ)上進(jìn)行案件推演。

那么,coredump的流程是什么樣子的呢?

如下圖所示,當(dāng)進(jìn)程發(fā)生故障的時(shí)候,內(nèi)核就會(huì)啟動(dòng)coredump機(jī)制將故障現(xiàn)場的vma等信息轉(zhuǎn)儲(chǔ)成core文件。故障過后,利用gdb加載coredump文件來還原故障現(xiàn)場。通過獲取故障現(xiàn)場變量值、調(diào)用棧等信息,可以快速確定故障類型,鎖定故障代碼位置,找到根因。

就像狄公每次一次斷案,都要先鎖定發(fā)現(xiàn)場,然后親自勘查,提取所有物證和證言,結(jié)合現(xiàn)場信息推演,還原案發(fā)經(jīng)過,最終鎖定作案元兇。

[[397139]]

coredump資源消耗問題

操作系統(tǒng)在內(nèi)核態(tài)生成core文件,是要將進(jìn)程的有效vma信息全量dump出來。這就意味著大進(jìn)程的coredump文件會(huì)非常龐大,甚至可以達(dá)到TB級別。這類大文件在生成和保存過程中嚴(yán)重消耗了IO、CPU、內(nèi)存帶寬等資源,對系統(tǒng)的穩(wěn)定性帶來沖擊。就像之前要偵破一起大案,需要封鎖方圓數(shù)公里內(nèi)交通,動(dòng)用數(shù)百警力做大量的摸排走訪工作。但隨著技術(shù)手段革新,收集信息也更準(zhǔn)確,摸排手段也越來越精細(xì)化。同樣的,coredump信息收集是否也能做到精細(xì)化?

[[397140]]

minicoredump登場

“元芳啊,定位問題,就像咱們天天去斷案一樣,走訪的關(guān)鍵是要先收集到高價(jià)值的線索,比如棧空間、data、bss等。其它的匿名頁信息,像堆空間,里面的數(shù)據(jù)雖然很重要,但是對于斷案來說大多情況下用不到,屬于低線索信息。而在大進(jìn)程的vma信息中,低線索信息占比還非常高。因此,我們要有選擇、有目標(biāo)地收集。這個(gè)時(shí)候,就該minicoredump登場了,將現(xiàn)場信息先篩選一遍。工作量優(yōu)化了不說,對正常生產(chǎn)影響也可以降到最小。”

青囊在一旁,欽佩地望著狄老大,默默地把minicoredump收錄到sysAK里。這里面不僅有內(nèi)存泄漏定位秘籍,網(wǎng)絡(luò)診斷利器,如今還有minicoredump加持,還可以有效地過濾過濾匿名頁信息,對core文件進(jìn)行瘦身,妙哉妙哉!

舉個(gè)栗子

如下表所示,這個(gè)是一個(gè)典型的案發(fā)現(xiàn)場信息分布。minicoredump會(huì)針對性地進(jìn)行收集:標(biāo)紅的區(qū)間需要收集起來,借助于gdb,就可以幫我們將案發(fā)過程回放(打調(diào)用棧)和關(guān)鍵物證提取(獲取棧上變量、全局變量等信息),而標(biāo)綠的區(qū)域可以在必要的時(shí)候再收集,不影響我們斷案。

  1. 103249:   ./main 
  2. 0000000000400000      4K r-x-- main 
  3. 0000000000600000      4K r---- main 
  4. 0000000000601000      4K rw--- main    #可執(zhí)行文件的data段 
  5. 0000000001fa5000    132K rw---   [ anon ]  #堆空間 
  6. 00007f8188000000  10372K rw---   [ anon ] 
  7. 00007f8188a21000  55164K -----   [ anon ] 
  8. 00007f8190000000  10372K rw---   [ anon ] 
  9. …… 
  10. 00007f819ca21000  55164K -----   [ anon ] 
  11. 00007f81a0000000  10372K rw---   [ anon ] 
  12. 00007f81a0a21000  55164K -----   [ anon ] 
  13. 00007f81a495d000      4K -----   [ anon ] 
  14. 00007f81a495e000   8192K rw---   [ anon ]  #棧空間 
  15. 00007f81a6dfe000  10244K rw---   [ anon ] 
  16. 00007f81a77ff000      4K -----   [ anon ] 
  17. 00007f81a7800000   8192K rw---   [ anon ] 
  18. 00007f81a8000000  10372K rw---   [ anon ] 
  19. 00007f81a8a21000  55164K -----   [ anon ] 
  20. 00007f81ac15c000      4K -----   [ anon ] 
  21. 00007f81ac15d000   8192K rw---   [ anon ] 
  22. 00007f81ac95d000      4K -----   [ anon ] 
  23. 00007f81ac95e000   8192K rw---   [ anon ] 
  24. …… 
  25. 00007f81ae160000      4K -----   [ anon ] 
  26. 00007f81ae161000   8192K rw---   [ anon ] 
  27. 00007f81ae961000   1808K r-x-- libc-2.17.so 
  28. 00007f81aeb25000   2044K ----- libc-2.17.so 
  29. 00007f81aed24000     16K r---- libc-2.17.so 
  30. 00007f81aed28000      8K rw--- libc-2.17.so #so data段 
  31. 00007f81aed2a000     20K rw---   [ anon ]   #so BSS段 
  32. 00007f81aed2f000     92K r-x-- libpthread-2.17.so 
  33. 00007f81aed46000   2044K ----- libpthread-2.17.so 
  34. 00007f81aef45000      4K r---- libpthread-2.17.so 
  35. 00007f81aef46000      4K rw--- libpthread-2.17.so 
  36. 00007f81aef47000     16K rw---   [ anon ] 
  37. 00007f81aef4b000    136K r-x-- ld-2.17.so 
  38. 00007f81af159000     12K rw---   [ anon ] #so link map 
  39. 00007f81af169000     12K rw---   [ anon ] 
  40. 00007f81af16c000      4K r---- ld-2.17.so 
  41. 00007f81af16d000      4K rw--- ld-2.17.so 
  42. 00007f81af16e000      4K rw---   [ anon ] 
  43. 00007fff7eafc000    132K rw---   [ stack ] 
  44. 00007fff7eb58000      8K r----   [ anon ] 
  45. 00007fff7eb5a000      8K r-x--   [ anon ] 
  46. ffffffffff600000      4K r-x--   [ anon ]  #syscall 
  47. total           532892K 

實(shí)際表現(xiàn)

該要拿真實(shí)數(shù)據(jù)說話:我們挑了一個(gè)真實(shí)的環(huán)境對比。同樣的進(jìn)程coredump,文件大小從3.5G下降到了1.9G。

coredump空間縮小后,不影響推棧等功能:

在更為復(fù)雜的生產(chǎn)環(huán)境,實(shí)際優(yōu)化幅度可以達(dá)到80%以上,業(yè)務(wù)抖動(dòng)下降了30%。換句話說,在引用了新技術(shù)以后,封鎖量減少,交通也就更順暢了。

狄公問:元芳,此法可好?

元芳連連點(diǎn)頭,嘖嘖稱贊:minicoredump神也神也,狄公了不得、了不得啊!

作為高級助理的青囊,站在一旁,用衣袖一遍一遍擦拭羅盤,心里也樂開了花。

半年后,狄公和元芳一行在清理大理寺檔案庫房,眼前已然不是堆疊成山的卷宗。得益于變薄的新卷宗,還騰挪出了一方天地,品茶說案,心曠神怡。

狄公戲問——

[[397141]]

在一旁的青囊正要開心,突然斥候送來一份搪報(bào),狄公拆開看了,說道:官道上剛出了樁大案,影響甚大,我們要馬上出發(fā)。青囊一驚,從夢中醒來,尋思著:官道?難道是新出了網(wǎng)絡(luò)問題。欲知后事如何,且聽下回分解。(完)

參考內(nèi)容

https://www.cnblogs.com/lidabo/p/5014710.html

http://hutaow.com/blog/2013/10/25/linux-core-dump/

https://www.cnblogs.com/secondtonone1/p/5732938.html

原文鏈接:https://mp.weixin.qq.com/s/Qntk4yA1afi2GGVZAOVgZA

 

責(zé)任編輯:武曉燕 來源: 云巔論劍
相關(guān)推薦

2021-08-23 14:36:26

coredump

2012-08-28 09:12:52

App瘦身

2011-04-22 11:09:41

華碩家用臺(tái)式電腦晶品CP5

2017-03-02 15:09:29

AndroidAPK瘦身實(shí)踐

2009-02-19 20:36:30

VistavLite副作用

2010-12-14 18:50:23

微軟

2021-05-27 09:57:55

Inotify監(jiān)控系統(tǒng)

2012-11-30 11:00:54

2011-08-19 08:56:34

JavaJava風(fēng)云

2019-10-28 11:11:52

戴爾

2013-03-04 13:48:27

Windows Sev瘦身

2018-10-24 15:53:29

微服務(wù)后端JVM

2011-12-13 15:18:14

開放平臺(tái)

2021-05-06 05:39:30

Inotify監(jiān)聽系統(tǒng)

2011-08-25 22:16:31

惠普PC業(yè)務(wù)暗戰(zhàn)

2011-08-18 16:14:11

電腦360瘦身

2023-10-19 15:25:40

2021-04-22 05:40:45

iOS應(yīng)用瘦身

2013-03-20 10:09:22

微博風(fēng)云大數(shù)據(jù)社會(huì)化數(shù)據(jù)分析

2017-09-18 08:52:34

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 99精品在线观看 | 国产精品成人国产乱一区 | 亚洲一区二区三区在线视频 | 亚洲午夜精品在线观看 | 在线观看涩涩视频 | 成人一区二区三区 | 精品无码三级在线观看视频 | 精品九九久久 | 国产精品久久久久久久久免费丝袜 | 伊人二区 | 国产精品免费福利 | 国产亚洲一区二区三区 | 91天堂网 | 伊人网一区 | 久久国产成人 | www亚洲精品 | 91正在播放| 国偷自产av一区二区三区 | 亚洲日韩中文字幕一区 | 欧美一a一片一级一片 | 一级大黄色片 | 欧美片网站免费 | 国产精品久久久久久婷婷天堂 | 欧美lesbianxxxxhd视频社区 | 欧美精品中文 | 亚洲性视频网站 | 成人国产在线视频 | 中文字幕视频免费 | 国产精品69毛片高清亚洲 | 91久久久久久 | 亚洲国产一区在线 | 青青草视频免费观看 | 天天玩天天操天天干 | 日韩国产黄色片 | 久久成人一区 | 国产成人一区二区三区久久久 | 日本精品一区二区三区在线观看视频 | 成人在线免费观看视频 | 一区二区三区在线观看视频 | 国产精品国产三级国产aⅴ入口 | 久久久久久蜜桃一区二区 |