关于cpu占用过高的解决步骤 cpu100咋解决

近期用户反馈服务器上运行的项目越来越慢!同事打开服务器一看 , 原来cpu满了 。说是服务器不够用 , 需要再备多一台了……

关于cpu占用过高的解决步骤 cpu100咋解决

文章插图
占用100%
我看着是数据库瓶颈 , 像是程序实现有点问题 。
最终定位到问题是一个定时服务语句引起的 。
这个服务目前是每10秒查询数据 , 通过api向第三方平台上传数据 。推送的数据不能重复 , 而且必须是按时间顺序的 , 成功后会保留记录 。在查询的时候 , 需要排除掉已经推送成功的 。
随着最近系统使用的多 , 每天产生10多万条数据 。当推送成功记录超100万的时候 , 问题就出现了 , 查询越来越慢 , 服务器越来越卡 。
弄清楚了问题 , 那就好解决了!
优化了程序逻辑 , 只查询最近3天的数据 , 然后推送记录定期自动删除 , 只保留最近5天的 。后面看情况再调整时间 。
推送的数据分了很多物理表(业务需要所以分表了) , 对表增加状态进行管理 。不开启的不用查询 , 一定程度上降低数据库请求 。
重新发布之后 , 性能已经稳定了 。
关于cpu占用过高的解决步骤 cpu100咋解决

文章插图
正常在0-10%
【关于cpu占用过高的解决步骤 cpu100咋解决】程序实现还是得好好设计一下……