zoukankan      html  css  js  c++  java
  • 服务器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个文件
    总结:完美完成优化改造,提高服务稳定性及并发量

  • 相关阅读:
    什么是系统瓶颈?
    功能测试之链接测试
    H5页面测试要点
    面向对象编程
    Java 基本语法(1)
    Java语言概述
    Annotation注解(有源代码)
    枚举类专题(有源代码)
    JDBC专题
    JSP专题
  • 原文地址:https://www.cnblogs.com/tongcc/p/14314418.html
Copyright © 2011-2022 走看看