MySQL执行statement使用一个连接一个thread的方式,当连接数增加到某一个点,那么性能将会开始下降.这个特性的作用就是无论有多少连接,thread pool都讲保证性能处于最好水平.thread pool的原理主要是减少线程,减少上下文交换和锁资源争抢,针对OLTP环境特别有效.为可以开启thread pool功能,请将thread_handling=pool-of-threads.percona server实现的thread pool是在server级别,和oracle mysql的不一样(插件形式),另外一个不同点在于,percona的thread pool不尝试最小化并发事物数量.优先连接调度:在percona server 5.5.30,thread pool的优先连接调度已经实现,虽然线程池会限制并发执行的queries的数量,但是open的transactions依然可能很多.因为新开启的transaction会跟在queue后面,高并发的transaction意味着很多当前运行的查询.为了增强性能,引入了thread_pool_high_prio_tickets参数.这个参数控制进入高优先级队列的策略,对每个新连接分配可以进入高优先级队列的ticket,如果当一个query因为没有可用的线程导致执行延时,如果这个连接满足下面的条件可以直接进入高优先级的
...
继续阅读
(33)