昨天我执行了版本升级,其中包括从 PHP 7.4 升级到 8.2。
起初,我认为问题可能来自 PHP 版本(因为php8.2-fpm
服务一直死掉),所以我恢复到php7.4-fpm
,但这并没有解决问题。
php7.4-fpm.service: A process of this unit has been killed by the OOM killer.
php7.4-fpm.service: Failed with result 'oom-kill'.
php7.4-fpm.service: Consumed 12min 18.367s CPU time.
我有按池组织的站点套接字
都有这个配置:
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
服务会在 1 小时左右下降。所以我决定引入一个max_requests
限制
pm.max_requests = 1000
然后它变得更加稳定,但在 12 小时左右结束下降。所以现在我担心,仅仅调整这个并不断减少这个数字,只会让服务器稍后下降,但在某个时候下降,这是不理想的。这里奇怪的部分是,在更新之前(Ubuntu 20.04 LTS)它是 100% 稳定的,从未下降,而在更新到 Ubuntu 22.04 LTS 之后,事情开始变得疯狂。
在重新审视服务器故障和超级用户中有关 OOM 的许多其他问题之后,我已经没有办法测试更多选项了,所以我想知道是否有人可以建议我测试其他新的可能性
由于 WordPress 插件 (WP-Rocket) 导致内存泄漏
由于另一个问题中的答案,我能够识别这一点:
https://stackoverflow.com/a/20590805/4442122
这指出了泄漏发生的确切位置。下去之后才找到原因。这根本不简单,特别是因为(WP)背后有一个庞大的系统,所以问题可能来自任何地方(特别是因为所有内容都是从 WP 中的主index.php加载的)。