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

MySQL引起的CPU消耗過大,你會如何優化?

數據庫 MySQL
本文介紹了CPU消耗過大的原因是MySQL引起的,你會怎么優化呢?一起來看一下吧。

誰在消耗cpu?

用戶+系統+IO等待+軟硬中斷+空閑

禍首是誰?

用戶

用戶空間CPU消耗,各種邏輯運算

正在進行大量tps

函數/排序/類型轉化/邏輯IO訪問...

用戶空間消耗大量cpu,產生的系統調用是什么?那些函數使用了cpu周期?

IO等待

等待IO請求的完成

此時CPU實際上空閑

如vmstat中的wa 很高。但IO等待增加,wa也不一定會上升(請求I/O后等待響應,但進程從核上移開了)

產生影響

用戶和IO等待消耗了大部分cpu

  •  吞吐量下降(tps)
  •  查詢響應時間增加
  •  慢查詢數增加
  •  對mysql的并發陡增,也會產生上訴影響

 

如何減少CPU消耗?

減少等待

減少IO量

SQL/index,使用合適的索引減少掃描的行數(需平衡索引的正收益和維護開銷,空間換時間)

提升IO處理能力

加cache/加磁盤/SSD

減少計算

減少邏輯運算量

  •   避免使用函數,將運算轉移至易擴展的應用服務器中

  如substr等字符運算,dateadd/datesub等日期運算,abs等數學函數

  •   減少排序,利用索引取得有序數據或避免不必要排序

  如union all代替 union,order by 索引字段等

  •   禁止類型轉換,使用合適類型并保證傳入參數類型與數據庫字段類型絕對一致

  如數字用tiny/int/bigint等,必需轉換的在傳入數據庫之前在應用中轉好

  •   簡單類型,盡量避免復雜類型,降低由于復雜類型帶來的附加運算。更小的數據類型占用更少的磁盤、內存、cpu緩存和cpu周期
  •   ....

減少邏輯IO量

  •   index,優化索引,減少不必要的表掃描

  如增加索引,調整組合索引字段順序,去除選擇性很差的索引字段等等

  •   table,合理拆分,適度冗余

  如將很少使用的大字段拆分到獨立表,非常頻繁的小字段冗余到“引用表”

  •   SQL,調整SQL寫法,充分利用現有索引,避免不必要的掃描,排序及其他操作

  如減少復雜join,減少order by,盡量union all,避免子查詢等

  •   數據類型,夠用就好,減少不必要使用大字段

  如tinyint夠用就別總是int,int夠用也別老bigint,date夠用也別總是timestamp 

  • ....

減少query請求量(非數據庫本身)

  •   適當緩存,降低緩存數據粒度,對靜態并被頻繁請求的數據進行適當的緩存

  如用戶信息,商品信息等

  •   優化實現,盡量去除不必要的重復請求

  如禁止同一頁面多次重復請求相同數據的問題,通過跨頁面參數傳遞減少訪問等

  •   合理需求,評估需求產出比,對產出比極端底下的需求合理去除
  •   ....

升級cpu

  •  若經過減少計算和減少等待后還不能滿足需求,cpu利用率還高T_T
  •  是時候拿出最后的殺手锏了,升級cpu,是選擇更快的cpu還是更多的cpu了?
  •  低延遲(快速響應),需要更快的cpu(每個查詢只能使用一個cpu)
  •  高吞吐,同時運行很多查詢語句,能從多個cpu處理查詢中收益 

 

責任編輯:龐桂玉 來源: 碼農技術圈
相關推薦

2021-06-29 11:05:25

MySQLCPU數據庫

2020-03-09 15:00:39

MySQLCPU數據庫

2019-06-03 10:30:42

MySQLCPU數據庫

2017-01-12 15:17:27

線程CPU定位

2011-03-23 14:42:47

CPU過度消耗

2019-07-09 10:51:53

HTTPS優化服務器

2011-11-28 10:50:56

JavaJVM優化

2025-04-02 04:33:00

CPU服務器時鐘頻率

2012-06-18 15:18:32

JS

2023-02-26 10:18:24

數據庫SQL語句

2023-06-08 12:43:21

性能優化開發

2024-03-07 08:08:51

SQL優化數據

2024-03-29 12:50:00

項目分層模型

2025-05-26 01:55:00

HashMap擴容Redis

2022-05-27 11:59:22

Linux內存CPU

2020-07-06 07:48:16

MySQL細節SQL

2024-02-22 08:31:26

數據恢復工具MySQL回滾SQL

2017-02-14 08:33:48

CPULinux內核

2020-08-03 14:17:34

CPU內存系統運維

2022-09-04 15:54:10

Node.jsAPI技巧
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩综合 | 亚洲国产精久久久久久久 | 小早川怜子xxxxaⅴ在线 | 久久99精品久久久久久国产越南 | 国产95在线 | 中文字幕91av | 午夜影院在线观看版 | 亚洲激情综合 | www.v888av.com| 日韩免费在线视频 | 欧美精品在欧美一区二区 | 成人午夜黄色 | 欧美成人精品一区二区男人看 | 精品人伦一区二区三区蜜桃网站 | 成人免费观看男女羞羞视频 | 91精品久久久久久久久久小网站 | 日本免费黄色一级片 | 亚洲一区中文字幕 | 日韩精品在线一区 | 在线观看成人免费视频 | 中文字幕欧美日韩一区 | 欧美久久一区二区 | 成人黄色网址大全 | 欧美一极视频 | 精品欧美一区二区三区久久久 | 国产欧美精品在线观看 | 欧美videosex性极品hd | 精品国产乱码久久久久久久久 | 国产欧美一区二区三区日本久久久 | 国产一区二区久久 | 国产精品99久久久久久久久 | 国产久 | 日韩精品一区二区三区高清免费 | 国产精品三级 | 亚洲最大av | 国产免费麻豆视频 | 亚洲精品1 | 亚洲欧洲激情 | 成人福利网站 | 日日摸日日碰夜夜爽亚洲精品蜜乳 | 一区二区av|