您的当前位置:首页正文

(读书笔记),Mysql并发优化

2024-11-07 来源:个人技术集锦

              MySQL与其它商业数据库相比,最为人诟病的就是其并发特性,高并发下,Mysql可能会出现糟糕的性能。

        Myisam并发调优

        concurrent_insert控制了Myisam引擎的并发插入行为,他有三个值配置

        0:Myisam不允许并发插入行为

        1:默认值,只要表中没有空闲的区域,Myisam就允许并发插入

        2:强制并发插入到表末尾。使用此值可能会导致表碎片增多。

        其它还有delay_key_write,以及low_priority_updates要选择合适的场景使用

        Innodb并发优化

        innodb_thread_concurrency控制了一次有多少线程进入内核,0表示不限制,理论上,这个值的设置可以参考CPU

        及磁盘数量,设置此参数的值等于CPU数量×磁盘数量×2

        innodb采用两阶段的方式保证线程尽可能高效的进入内核,这种操作减少了操作系统带来的上下文切换带来的开销

        线程先sleep规定的微秒数,然后尝试进入内核。如果不能进入,进入一个线程的等待队列并把控制权交给系统。

        Innodb_thread_sleep_delay 这个参数设定了sleep的时间,默认是10000微秒。

        如果是在大量小查询的系统上,可以适当调小此值。

       

显示全文