Php sw engine Plesk Onyx导致内存不足错误

Php sw engine Plesk Onyx导致内存不足错误,php,out-of-memory,plesk,plesk-onyx,Php,Out Of Memory,Plesk,Plesk Onyx,我正在尝试运行一个大型的php scit,如果之前的一个已经完成,它每小时都会启动一次 现在我遇到了内存不足的错误,如果我分析“top”,sw引擎任务将消耗大量内存,并且该内存不会在任何时候释放。 已安装Plesk Onyx版本17.8.11更新#17-使用PHP7.2.9 PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 4626 psaadm 20 0 8838088 8.1

我正在尝试运行一个大型的php scit,如果之前的一个已经完成,它每小时都会启动一次

现在我遇到了内存不足的错误,如果我分析“top”,sw引擎任务将消耗大量内存,并且该内存不会在任何时候释放。 已安装Plesk Onyx版本17.8.11更新#17-使用PHP7.2.9

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
  4626 psaadm   20  0    8838088 8.195g 17344 S  1.7  34.1    9:23.35 sw-engine
有没有关于如何摆脱消耗所有资源的软件引擎的想法


当我简单地启动一个计划任务时,为什么软件引擎会消耗资源?

软件引擎
是一个PHP-FPM处理程序,Plesk在内部使用它来运行,例如,Plesk UI和PHP脚本作为计划任务:

# sw-engine -v
PHP 7.1.14 (cli) (built: Apr  9 2018 16:55:38) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
您可以使用服务器上安装的任何PHP版本,而不是
sw engine
。例如,对于操作系统供应商提供的php,
/usr/bin/php
,或者对于plesk附带的PHP7.2,
/opt/plesk/php/7.2/bin/php

要做到这一点,只需使用
运行命令
类型创建一个计划任务,并在脚本路径前面加上PHP可执行文件路径:

根据OOM问题,
sw引擎默认使用256 MB内存限制:

# grep limit /usr/local/psa/admin/conf/php.ini
memory_limit = 256M
所以看起来内存限制在脚本本身的某个地方被重新定义了。 您可以按如下方式验证:

# grep -i memory_limit /path/to/script.php
此外,您可以尝试手动运行它,查看它在不同PHP版本中的性能,以查看是否存在任何差异:

# /usr/bin/php /path/to/script.php
# /usr/sbin/php-fpm /path/to/script.php
# /usr/sbin/sw-engine-fpm /path/to/script.php
# /opt/plesk/php/7.2/bin/php /path/to/script.php