MySQL 9.0 发行说明
注意
MySQL 企业线程池是 MySQL 企业版中包含的扩展,MySQL 企业版是一款商业产品。要了解有关商业产品的更多信息,请访问 https://www.mysqlserver.cn/products/。
MySQL 企业版包含 MySQL 企业线程池,它使用服务器插件实现。MySQL 服务器中的默认线程处理模型使用每个客户端连接一个线程来执行语句。当更多客户端连接到服务器并执行语句时,整体性能会下降。线程池插件提供了一种替代的线程处理模型,旨在降低开销并提高性能。该插件实现了一个线程池,通过有效地管理大量客户端连接的语句执行线程来提高服务器性能。
线程池解决了使用每个连接一个线程的模型的几个问题
过多的线程堆栈使 CPU 缓存几乎在高度并行执行工作负载中毫无用处。线程池促进线程堆栈重用,以最大程度地减少 CPU 缓存占用空间。
当过多的线程并行执行时,上下文切换开销很高。这也给操作系统调度程序带来了挑战。线程池控制活动线程的数量,以将 MySQL 服务器中的并行性保持在它可以处理的水平,并且适合 MySQL 正在执行的服务器主机。
过多的事务并行执行会增加资源争用。在
InnoDB
中,这会增加花费在持有中央互斥锁上的时间。线程池控制事务何时启动,以确保没有太多事务并行执行。