共计 759 个字符,预计需要花费 2 分钟才能阅读完成。
Linux Centos 系统中如何设置定时重启? 此前线上运行的某项目总是容易导致服务器内存飙升到 100%,由于当时不知究竟是何原因,只能先设定每日定时重启机器来苟延残喘。centos 定时重启功能,有助于释放 CPU 和内存,当然长期来看可以升级机器配置或优化程序及数据库性能来解决!
如果您也遇到相同的问题,可使用以下方法查看内存使用情况:
# 查看剩余内存
free
# 实时查看资源占用情况
top
# 可输入 M 查看所有应用的资源占用情况,更多操作请查看相关文档说明
首先,我们先了解下 linux 重启的几种命令:
reboot:普通重启
shutdown -r now:立刻重启 (root 用户使用)
shutdown -r 10:10 分钟后重启
shutdown -r 20:35:在时间为 20:35 的时候重启
init 6
crontab - e 加入定时任务:
0 4 * * * /sbin/shutdown -r now
前几位分别对应系统的 分 时 日 月 周,如果要每隔 3 小时重启,可设置为 * */3 * * * /sbin/shutdown -r now,如果需要更严格或完善的,如每天 23 点到 7 点每 2 小时重启,可设置为 * 23-7/3 * * * /sbin/shutdown -r now。
最后:wq 保存,即设置成功。
查看定时命令:
crontab -l
未生效则执行重启服务命令:
service crond restart
后记: 经过我大胆的猜测,导致内存总是飙升的原因很可能是项目内集成的一个图像识别算法工作时会抢占大量 CPU 与内存资源,且此项目启动时会有多个相同的进程,猜测算法被重复加载也是内存占用高的原因,故果断将此算法服务从项目内剥离出来,并对算法接收到的图片做缩放处理,设置同时可处理算法任务数限制。
事实证明我的猜想是正确的,内存占用由原先长时间 90+ 降到 37 左右,CPU 也未再出现瞬间飙升至 100% 的惨剧。