此文及後面的系列,都是從tess老大那裡翻譯過來的。一直和GTEC的老牛們作CASE(此句有誤,一直提CASE,等老牛們提供答案),算是粘到了一點仙氣。偶一直比較懶,所以以前精心抄襲的文章,今天再次精心作序於此,希望對各位掙扎於現實與理想的各位,共享,共勉。tess老大的文章國內似乎有人翻譯過,但偶個人觀點,不看好,因為好東西都沒了哦。
不是我不捨得,意思是,我的post裡面基本上沒有link,但是從google上都能搞到,如tess老大的系列debug文章。寫程序的人,用好google應該是第一要素啊,哇哈哈哈!(百度除外,偶鄙視的公司)
每個post的題目都挺嚇人,但是最終發現問題以及解決掉的方法,都異常簡單。簡單,產生丑陋。
問題描述:
程序慢的要死,CPU占用始終持續在70%-80%之間
解決步驟:
性能監視器。對於高CPU占用,一般的是這三個原因:
· 高的離譜的循環
· 太多的加載(比如,許多小的對象被頻繁的處理)
· GC作了太多的事情
第一種情況,當你在恰當的時機抓到一個dump,就非常容易解決,一般而言,都是因為業務處理邏輯造成的。第二種情況,一般需要從硬件上考慮,scale up或者scale out,都行。