zoukankan      html  css  js  c++  java
  • 故障注入之如何给服务器CPU注入高负载

    应用的可靠性测试,需要考虑其在服务器高负载下能否持续正确的提供服务,常见的高负载包括CPU使用率高、磁盘IO高,内存使用率高等场景,本次讨论如何对服务器注入CPU的高负载。

    CPU利用率高

    因为某种原因导致CPU使用率达到100%,导致应用对外服务能力下降或不可用。

    故障注入方法

    方法1:使用yes命令

    yes>/dev/null

    #这个命令只能使cpu的1个核跑满100%,多核的话就起多个命令。

    拿我只有1个核的服务器走一个

    方法2:循环跑一个系统调用

    #!/bin/bash
    while true
    do
    date >/dev/null
    done

    #这个调用只能使cpu的1个核跑满100%,多核的话就起多个命令。

    可以看到方法1和方法2的区别在于方法一是us比较高,方法二是sys比较高,因为方法2的date命令会进行疯狂的系统调用,从而导致sys占比较高。

    方法3:循环跑ssl测试

    #!/bin/bash
    while true
    do
     /usr/bin/openssl speed>/dev/null2>&1
    don

    #这个调用只能使cpu的1个核跑满100%,多核的话就起多个命令。

    方法4.使用stress工具

    yum  install stress -ystress-c 1-t 120
    
    stress-c 1-t 120  

    # -c cpu核心数量 

    # -t 压测时长

    方法5:使用chaosblade

    blade create cpu fullload

    但行好事,莫问前程
  • 相关阅读:
    MySQL库表设计小技巧
    教你用SQL实现统计排名
    Truncate用法详解
    utf8字符集下的比较规则
    关于Aborted connection告警日志的分析
    MySQL DDL详情揭露
    时间戳,这样用就对了
    在线修改主从复制选项
    20181211HW
    20181207hw
  • 原文地址:https://www.cnblogs.com/mingfan/p/14546433.html
Copyright © 2011-2022 走看看