1.安装sysbench工具
sysbench工具是模拟系统异常情况,系统级的压测工具,直接作用于系统。
命令:apt-get install sysbench
2.模拟多线程切换
命令:sysbench --num-threads=10 --max-time=300 --max-requests=10000000 --test=threads run
如图:

再开第二个终端。
使用vmstat 2 (每两秒统计一次)命令查看CPU系统的资源使用情况,如图:

通过上图可以看出我们的CPU很空闲,id-->cpu等待时间 ;sy的值非常的高,sy-->系统的使用率;cs的状态及其高,cs-->上下文切换的次数 ;in的状态也高,in-->每秒中断的次数。
再开第三个终端。可以发现我们进入系统很慢很慢
使用命令:ps aux (查看进程情况)如图:

可以发现CPU的占用率不高,但是系统特别的慢。
使用命令:uptime (查看系统负载)如图:

可以看出系统的负载非常大。
使用命令:pidstat -wt -u 3 查看线程使用时间,如图:


可以看出sysbench线程的cswch/s的值非常的高。(
1.cswch: 自愿上下文切换,是指进程无法获取所需资源,导致的上下文切换。比如说, I/O、内存等系统资源不足时,就会发生自愿上下文切换。
2.nvcswch: 非自愿上下文切换,则是指进程由于时间片已到等原因,被系统强制调度,进而发生的上下文切换。。比如说,大量进程都在争抢 CPU 时,就容易发生非自愿上下文切换。)
通过上面可以看出sysbench导致了大量的上下文切换。
浙公网安备 33010602011771号