最近发现宝塔面板经常出现php占用内存过高,每天第一次打开都发现PHP占用内存在90%以上,其实网站本身没有多少流量的,出现这种情况以前也没有遇到过,下面给大家介绍如何利用宝塔面板计划任务功能定期自动释放php占用内存。

目前宝塔面板已经非常流行,很多新手都选择使用宝塔面板,很多博客设置了Memcached内存缓存加速,也就意味着内存会越用越多,那么就需要一段时间就要释放内存,或者重启服务器。其实并不是特定在使用宝塔或者其他面板的时候会出现内存占用过高导致服务器出现问题。比如我们常见的有网站打开或者面板打开有出现502页面问题,较大的可能是因为内存不足导致的。因为网站在执行过程中,因为PHP、MYSQL、PURE-FTPD、APACHE、NGINX的内存占用,是的服务器资源不足导致的问题。今天就利用宝塔面板的“计划任务”功能,自动释放内存。

宝塔面板定期释放PHP占用内存

在计划任务菜单中可以选择上图所示的释放内存内置任务类型,然后设定周期,一般设定每天半夜左右时间自动释放。

自动释放:

在计划任务中添加任务,选择周期,如每周一 3 时 30 分执行,选执行 Shell 脚本,粘贴以下 Shell 脚本。

if [ -f /etc/init.d/php-fpm-52 ];then
        service php-fpm-52 reload
fi

if [ -f /etc/init.d/php-fpm-53 ];then
       service php-fpm-53 reload
fi

if [ -f /etc/init.d/php-fpm-54 ];then
       service php-fpm-54 reload
fi

if [ -f /etc/init.d/php-fpm-55 ];then
        service php-fpm-55 reload
fi

if [ -f /etc/init.d/php-fpm-56 ];then
        service php-fpm-56 reload
fi

if [ -f /etc/init.d/php-fpm-70 ];then
      service php-fpm-70 reload
fi
myDate=`date +"%Y-%m-%d %H:%M:$S"`
echo "★[$myDate] PHP内存回收成功!"
echo '------------------------------------------------------------------------------';