看似很簡單的問題,想要解釋得很好突然又發現自己缺少關鍵訊息
狀況:
今天要說服主管更換公司舊Server(2014-2016),於是我拿出了User滿意度紀錄上面User滿滿抱怨效能不好,主管:那你能出示CPU loading 紀錄證明使用率滿載,導致效能不好....
補充架構:Xeon(R)CPU E5-2699v4@2.20GHz2 64core、Memory264G、硬碟用自己肚子的、系統:Ubuntu 峰值約有50人在上面 compiler
我舉例就像買了一隻全新的 iphone6 跑 app CPU沒吃滿 跟現在的iphone13 比,你也會覺得慢,所以CPU概念應該是年份要優先考慮先比較製程技術,年份或代數相近再看CPU loding 才比較準...
1.我想問一下各位大大 上面舉例這概念 有甚麼專業的定義或名詞或佐證的研究嗎?
2.另外針對 舊CPU沒吃滿-效能卻不好,我預想比較好的說明
前端input水管大小問題如:硬碟快慢、Memory處理頻率,導致CPU沒吃滿速度也不快
這點想請教大大這點有沒有更好的說法?
謝謝
我想問一下各位大大 上面舉例這概念 有甚麼專業的定義或名詞或佐證的研究嗎?
我想你可以搜尋,如何蒐集 Performance Metrics
ex: Window 有 Performance Monitor 紀錄系統基本 Metric 使用狀況
DB CPU沒吃滿-效能卻不好
首先問題可能不在 CPU,所以我會建議,你先去看使用者說"慢"執行計畫,查詢語法是否合理、是否有合理 Index...(句我經驗大部分都是這些問題沒有處理好),再看機器 Metric,相關設定
DB 會慢的原因很多,要有 Metrics 或紀錄佐證才有辦法
總結:你可能要提供更多資訊才有辦法給你建議,不然我只能跟你說從這幾點排查
首先,你要先了解一件事。CPU的速率及核心。只是用來決定應付的工作程度。
但它不會因為年代久遠就不能用。
大多數來說,正常的SERVER機硬體,大多數都是能操上十年沒問題的。
在十多年前的機器。SERVER機都遠比一般家用主機貴上5~10倍的價格是有其道理的。
所以主機會變慢的因素。並不能單看CPU的古老程度。
要是要看十年前及現今的負載人數及資料當前的容量來決定。
並不能一味的說要更換設備。
所以你主管其實說的很有道理。你只是認為換新硬體就好了。但你提不出証明出來。
你有沒有想過一件事。如果換設備後還是一樣的情況。那你該如何解釋呢?
因為機器買不夠好不夠快不夠先進嘛?
而且一般SERVER設備預算。少說都是10來萬起跳。
公司負擔這些成本後,但確沒有實際效應。這算是大虧的。
最後回答你的實際問題。
1.道先你要先了解一件事。所謂的負載要計算的是負載最大值及平均負載。
負載最大值且不會超過3秒的情況下。且是CPU可容許的範圍(不至於當機)。一天不超過10次以上。
那就還能接受。但也最好找出為何會有這樣的瞬間負載。
2.要習慣去讀記錄圖表。並分析。這才是你最大的重點問題。你要有SERVER的使用情況圖表來當佐証。
3.最後,分析圖表是否有異常的情況。如持續高峰、尖山峰太多次。RAM的用量波動太大...
這些都是屬於不太正常的使用情況。這時就要去分析何種原因造成的。
大多數要先懷疑資料庫。筆數是否有太多太大的。資料庫的結構是否有正常的索引對應
再來就是程式碼是否有需要優化的。
早期我曾經待過的公司。因程式碼寫的不夠好。很常常有異常的大量請求資料。
導致要用一台16核64G的機器。每個月將近10萬的租用主機費用。(雖然上線人數也不少就是了,高峰期約3000人)。還是會網站有時會變慢或卡頻LAG。
後期我查出原因後。改良了資料庫及優化了一下程式碼。現在是使用4核32G的機器。線上人數雖然有降低一些,平均高峰期約2000人左右。但已經不在有網站卡頻LAG的情況了。
硬體效能不好一定有證據,不單是CPU會影響效能,單就硬體來說記憶體、硬碟、網路...等等,都有可能影響,軟體部分更不用說(也有很多因素)。
如果自認硬體效能不好,卻又拿不出證據就說要換硬體,其實是不太負責任的說法(有些不肖軟體公司常用的藉口),有時候是其它因素造成的,卻想要靠硬體效能,去掩蓋那方面的缺失,老實說這並不是長久之計。
我建議還是具體分析問題點,並拿出證據(一翻兩瞪眼),我相信不只您的主管,甚至到更高層都沒話說,如果不知如何找問題點,可以找專業廠商來協助。
同樣的狀況:
我有一個同仁,常常被USER反映抱怨說電腦慢時,就跟我說那找一台規格更快的電腦給他好嗎?
我就問他,'你檢測過了沒?慢是慢在哪裡?'