400 028 6601

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

【Mysql】主机cpu之-sys使用率过高-创新互联

学习大神的http://mp.weixin.qq.com/s/hXtCzSnlVfo9Cq92538ipw自己整理一点思路
1.0top看cpu消耗,发现sys比usr要高不少,这非常不正常

在宛城等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、做网站 网站设计制作按需制作,公司网站建设,企业网站建设,品牌网站制作,营销型网站建设,外贸网站制作,宛城网站建设费用合理。

1.1使用pstack看 MySQL所有线程的调用栈:

InnoDB线程同步机制

我们知道linux线程同步有Mutex,spin lock,条件变量,rw lock等多种同步机制,InnoDB并没有直接使用系统的同步机制,而是自己定义了互斥结构数据结构kernel_mutex,将系统的spin lock,mutex,和条件变量融合一起

【Mysql】主机cpu 之-sys使用率过高

如图,kernel_mutexmutex对象的中重要的结构成员为os_event和lock_word。

InnoDB这样设计的目的都是延缓线程被挂起并进入os wait的速度,因为每一次进入os wait等待被唤醒或者唤醒都会进行一次上下文切换.但是也只能是延缓,并不能阻止,如果持续恶化得不到环境,最后仍然会进入os的等待队列,将会产生大量的上下文切换。但是有两个问题:

通过dstat看到此时cpu每秒有近20W次的上下文切换,综上所述,sys cpu负载高主要以下:



新闻标题:【Mysql】主机cpu之-sys使用率过高-创新互联
网站网址:http://www.bluegullmedia.com/article/jdodc.html

其他资讯

让你的专属顾问为你服务

0.3560s