“高性能MySQL笔记(下)”的版本间的差异

来自Alex's wiki
跳转至: 导航搜索
9.3平衡内存和磁盘资源
9.3平衡内存和磁盘资源
第17行: 第17行:
  
 
;缓存命中率:缓存命中率实际上也会决定使用了多少CPU,所以评估缓存命中率的最好方法是看CPU的使用率。
 
;缓存命中率:缓存命中率实际上也会决定使用了多少CPU,所以评估缓存命中率的最好方法是看CPU的使用率。
:例如,若CPU使用了99%的时间工作,用了1%时间等待I/O,那缓存命中率还是不错的。
+
:例如,若CPU使用了99%的时间工作,用了1%时间等待I/O,那缓存命中率还是不错的。(REF: 7.12节论述了查询缓存,不要和这里的概念混了)

2016年9月9日 (五) 09:10的版本

相关文章:高性能MySQL笔记(上)

第九章操作系统和硬件优化

9.1什么限制了MySQL的性能

最常见的两个瓶颈是CPU和I/O

9.2如何选择CPU

快速CPU还是多CPU,有两个目标:

低延时(快速响应)
要做到这一点就需要高速CPU
高吞吐
如果能同时运行很多查询,则可以从多CPU中受益

MySQL复制,也能在高速CPU下工作的非常好,而多CPU对复制的帮助不大。而备库的瓶颈通常是I/O子系统而不是CPU(因为在备库上已经被简化成了串行化任务)

9.3平衡内存和磁盘资源

顺序I/O比随机I/O快
内存随机访问比磁盘随机访问快了2500倍,但顺序读只比磁盘快了10倍左右
假设每次读取100字节:
  • 磁盘 随机寻道:100次/S ; 50M/S的顺序读
  • 内存 随机访问:25万次/S; 顺序访问:500万次/S。内存的顺序读写速度一般都在10G/S以上
缓存命中率
缓存命中率实际上也会决定使用了多少CPU,所以评估缓存命中率的最好方法是看CPU的使用率。
例如,若CPU使用了99%的时间工作,用了1%时间等待I/O,那缓存命中率还是不错的。(REF: 7.12节论述了查询缓存,不要和这里的概念混了)