部分进程数量变为以前2倍,求解决

51piaoling91

问题描述

各位大佬,宝塔环境,我原本使用php7.4版本,刚刚升级了8.2版本后,重启了webman,为什么部分进程的数量变为以前的2倍了,我的服务器是2核的,我发现只要进程数是这样配置的,'count'=> cpu_count()*2,那么最后的进程数就为以前的2倍,如果'count'=> 4这样写,那么进程数是正常的,我已经卸载php7.4版本,多次重启了,还是无效,是怎么回事呢

程序代码或配置

截图
截图
截图
截图

操作系统环境及workerman/webman等具体版本

截图

199 1 1
1个回答

北月

这个问题其实很简单,就是你更换了 PHP 版本,然后宝塔的 PHP.INI 配置文件中的 shell_exec 函数没有启用,cpu_count 函数是 webman 中的,而不是PHP自带的,你点进去看看源代码实现就知道了,里面用到了 shell_exec 函数。
宝塔直接在后台修改 PHP 配置文件,会自动同步到 PHP-CLI.INI 中,但是有一些函数在 PHP-FPM 环境中比较危险,部署 workerman/webman 最好用独立的 PHP版本,用静态的也行。

  • 51piaoling91 2024-02-04

    果然是的,一直在关注2倍问题,以为是2个php版本或者其他配置什么原因导致的,没想到是禁用函数导致的cpu_count()问题。
    谢谢大佬!

🔝