Java性能调优调查结果(第一部分)
我們在2014年10月進(jìn)行了Java性能調(diào)優(yōu)調(diào)查。該調(diào)查的主要目的是收集對Java性能世界的見解,以改進(jìn)Plumbr產(chǎn)品。 但是,我們也很高興與您分享有趣的結(jié)果。 我們收集的數(shù)據(jù)為進(jìn)行冗長的分析提供了素材,因此我們決定將結(jié)果劃分為一系列博客文章。 這是第一個,試圖回答以下問題:
- 誰處理Java性能問題?
- Java性能問題有多廣泛?
- 解決這些問題需要多長時間?
- 這個時間花在哪里?
回答我們調(diào)查的工程角色
在2014年10月,共有308名受訪者接聽了我們的電話并完成了調(diào)查。我們還根據(jù)其角色對受訪者進(jìn)行了介紹,以下圖表說明了使用的不同標(biāo)題:
進(jìn)一步放大此分布,可以說數(shù)據(jù)是由響應(yīng)者角色分布的,如下所示:
- 73%工程
- 6%的運營
- 2%的質(zhì)量檢查
- 14%管理
- 5%無法分類
我們可以得出結(jié)論,該調(diào)查主要基于工程角色,而管理層,運營和質(zhì)量保證人員則略有不同。
93%的受訪者在過去一年中遇到了績效問題
“在過去的12個月中,您是否遇到過Java性能問題?” 這是為其余調(diào)查奠定整體基礎(chǔ)的第一個問題。 在308位受訪者中,有286位( 占93%)確認(rèn)他們在去年遇到了Java性能問題 。 對于這286人,我們在調(diào)查中還有9個問題需要回答。
對于其余22位在去年沒有遇到任何Java性能問題的人,這也是該調(diào)查的最后一個問題。
我們確實承認(rèn),回答我們調(diào)查的人員的選擇可能有偏見,并且這個數(shù)字并不真正代表Java世界的地位。 畢竟,在構(gòu)建性能監(jiān)視工具時,那些經(jīng)常在您的網(wǎng)站上徘徊的人更可能最近參與了性能監(jiān)視領(lǐng)域。 因此,我們不能真正宣稱93%的Java應(yīng)用程序工作人員每年都會遇到性能問題。
我們絕對可以斷言,我們從286個有關(guān)Java應(yīng)用程序性能問題的獨特示例中獲取了數(shù)據(jù)。 因此,讓我們看看問題到底是什么。
大部分時間都花在復(fù)制,證據(jù)收集和根本原因分析上。
在308位受訪者中,有156位選擇回答“過程中最耗時的部分”的問題。 這是一個自由文本問題,我們能夠?qū)?46個答案進(jìn)行分類。
這些答案被證明是調(diào)查中最有趣的結(jié)果之一。 令人驚訝的是,有76%的受訪者在“ 試圖復(fù)制-收集證據(jù)-理解證據(jù)-將證據(jù)與根本原因聯(lián)系起來 ”循環(huán)中掙扎最多:
- 受訪者的20% 大部分的時間試圖重現(xiàn)該問題,這樣他們就可以開始收集證據(jù)
- 25%的人在嘗試收集證據(jù) (例如日志文件或堆/線程轉(zhuǎn)儲)和理解證據(jù)方面最費力
- 30%花費的大部分時間 , 而 試圖 證據(jù)源代碼/配置鏈接到的根本原因
公平地說,您還應(yīng)該注意,有相當(dāng)多的受訪者(13%)聲稱,為該問題構(gòu)建實際的解決方案是該過程中最耗時的部分。 盡管這是一個可觀的數(shù)量,但仍比大多數(shù)時間花費在試圖找出根本原因的惡性循環(huán)中的用戶數(shù)量少五倍多。
您花了多長時間解決性能問題?
在本節(jié)中,我們要求受訪者量化他們試圖發(fā)現(xiàn)根本原因時所面臨的痛苦。 同樣,我們有284位受訪者回答了這個問題:
答案證實,即使某些情況很容易檢測和排除故障,但大多數(shù)性能問題還是很難解決的。 榮譽給個答復(fù)誰發(fā)現(xiàn),在不到一個小時的固定的問題,但讓我們一會兒,專注于48名受訪者停止(的情況下,17%),對他們來說,跟蹤下來,并解決性能問題意味著多了一個花了一個月。
解釋以上數(shù)據(jù)的另一種方法是查看花費的中位數(shù)和平均時間:
- 中位數(shù)時間落在“超過一天但不到一周”的范圍內(nèi),意味著花了幾天的時間進(jìn)行檢測和故障排除。
- 由于缺少上界,因此平均值的計算有些棘手,但是當(dāng)假設(shè)“一個多月”轉(zhuǎn)化為“恰好兩個月”時,用于查找和修復(fù)根本原因的平均時間為80個小時 。
如果我們看一下所花費的總時間,這些數(shù)字看起來就更令人恐懼了– 284名受訪者總共花費22,600小時來檢測和解決單個性能問題。 這相當(dāng)于超過130個工作月 。 僅僅考慮這個數(shù)字就清楚地表明該領(lǐng)域迫切需要更好的解決方案。
翻譯自: https://www.javacodegeeks.com/2014/11/java-performance-tuning-survey-results-part-i.html
總結(jié)
以上是生活随笔為你收集整理的Java性能调优调查结果(第一部分)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 苹果手机喇叭有杂音滋滋怎么解决
- 下一篇: 角瓜片怎么炒好吃 炒角瓜片的做法