讀場景:
壓力集中在web伺服器上,cpu和load分別為95%和25.
寫場景:
和讀一樣,壓力還在web伺服器上,mysql沒有任何壓力.
讀寫混合場景:
效能驟然下降,web伺服器的cpu和load分別為35%和7,
但mysqlload高達70多,cpu滿負載.
看mysql的實時任務,發現大量的鎖記錄,主要是update和select.
看幾個被鎖的sql所操作的表,
都是myisam引擎.
分析:為什麼單獨讀寫的效能那麼高,讀寫混合卻給mysql造成這麼大壓力?
原因:myisam是表鎖,不支援併發讀寫,
當讀寫同時請求執行的時候,先響應寫的請求,讀被鎖定.
MyISAM引擎與InnoDB引擎效能的對比測試
mysql中myisam 引擎與innodb 引擎效能的對比測試 首先介紹一下 硬體 和 軟體 的配置。1 硬體配置 cpu amd2500 1.8g 記憶體 1g 現代 硬碟 80g ide 2 軟體配置 os windows xp sp2 se php5.2.1 db mysql5.0.37 w...
MYISAM引擎和INNODB引擎的區別
一 功能性的比較 1.innodb支援事務,支援外來鍵約束,是乙個事務性的儲存引擎 表級鎖定的主要是myisam,memory,csv等一些非事務性儲存引擎 二 鎖的比較 1 innodb主要應用於行級鎖 row level 2 myisam主要應用於表級鎖 table level 三 各個鎖的比較...
MyISAM 引擎和Innodb 引擎的底層實現
1.innodb 引擎的底層實現 聚集索引方式 innodb 是聚集索引方式,因此資料和索引都儲存在同乙個檔案裡。首先 innodb 會根據主鍵 id 作為 key 建立索引 b 樹,如左下圖所示,而 b 樹的葉子節點儲存的是主鍵 id 對應的資料,比如在執行 select from user in...