key cache的mutex问题
作者:佚名 时间:2014-11-21
mysql索引缓存是所有线程共享的全局缓存,当多纯种同时并发读取某一个cache block的时候并不会有任何问题,每个线程都可以同时读取这个cache block,但是当某个cache block正在被一个线程更新或读入时,这个线程就会通过mutex锁定这个cache block,以达到不允许其他纯种同时更新或读取的目的,所以在高并发的环境下,如果key cache的大小不够充足非常容易因为cache block的mutex问题造成严重的性能影响,而且在目前正式发行的所有mysql版本中,mutex的处理机制存在一定的问题,当active线程数量稍微高一些的时候,就非常容易出现cache block的mutex问题,甚至有人将此性能作为bug报告给了mysql ab公司.
如没特殊注明,文章均为上海联楷网络原创,转载请注明来自:http://www.linksj.com/help/20151126/n1949.html