• 服务器CPU占用率达到100%的解决方案或者说是实操步骤


    项目环境:目前是银行项目的tomcat跟mysql是装在同一个服务器,cpu占用率达到100%,mysql在任务管理器占用率极高,达到80%以上;
    软件方面的自查:
    1.查询mysql版本,尽量使用公司同一版本5.6
    select version()

    2.查询是否有低效率的sql,有的话就调优,执行时间不能高于3s(方向为索引,索引级别为ref以上、关联查询的各个表编码相同)
    SELECT
    *
    FROM
    information_schema. PROCESSLIST a
    WHERE
    command <> 'sleep'
    AND time > 3
    ORDER BY
    time DESC

    3.查看mysql最大连接数
    show variables like '%max_connections%';
    设置最大连接数
    方法一:不用重启mysql:但是mysql挂掉之后就无效,需要重新设置
    set global max_connections=16000;
    修改配置文件
    进入MySQL安装目录 打开MySQL配置文件 my.ini 或 my.cnf查找 max_connections=100 修改为 max_connections=16000 服务里重起MySQL即可.

    4.优化项目数据库连接数,加大到合适数量
    5.优化tomcat服务器参数

    硬件自查
    危害:占用同一个CPU资源,会导致tomcat服务器卡顿,影响性能;
    建议:硬件升级;CPU增强,机械硬盘升级为固态硬盘(因为解析几百上千个文本需要很多IO操作);mysql服务及tomcat服务分离到不同的服务器

    持续观察一小时:
    1.cpu从100%下降到5%到8%;
    2.待解析的文件从230个到50个,每小时解析180个文件
    总结:完美完成优化改造,提高服务稳定性及并发量

  • 相关阅读:
    POJ 1811 Prime Test 素性测试 分解素因子
    sysbench的安装与使用
    电脑中已有VS2005和VS2010安装.NET3.5失败的解决方案
    I.MX6 show battery states in commandLine
    RPi 2B Raspbian system install
    I.MX6 bq27441 driver porting
    I.MX6 隐藏电池图标
    I.MX6 Power off register hacking
    I.MX6 Goodix GT9xx touchscreen driver porting
    busybox filesystem httpd php-5.5.31 sqlite3 webserver
  • 原文地址:https://www.cnblogs.com/tongcc/p/14314418.html
Copyright © 2020-2023  润新知