見識一下mysql cpu密集型的機器
08-10
見識一下mysql cpu密集型的機器
推薦閱讀:
cpu密集型伺服器的vmstat輸出通常在us列會有一個很高的,報告花費在非內核代碼上的cpu時鐘;也可能在sy列有很高的值,表示系統cpu利用率,超過20%就足以令人不安了。在大部分情況下,也會有進程隊列排隊時間(在r列報告的)。線上一台mysql伺服器例子:
注意,這裡也有合理數量的上下文切換(在cs列),除非每秒超過100 000次或更多,一般都不用擔心上下文切換。當操作系統停止一個進程轉而運行另一個進程時,就會產生上下文切換。
例如, 一查詢語句在MyISAM上執行了一個非覆蓋索引掃描,就會先從索引中讀取元素,然後根據索引再從磁碟上讀取頁面。如果頁面不在系統緩存中,就需要從磁碟進行物理讀取,這就會導致上下文切換中斷進程處理,直到I/O完成。這樣一個查詢可以導致大量的上下文切換。
同樣在這台機器上讀觀察iostat的輸出(再次剔除顯示啟動以來的平均值的第一行),可以發現磁碟利用率低於%5:
看一下mysql查詢日誌:
真是驚喜不斷!!!不說了,路過當啥都沒看見吧
推薦閱讀: