我有一台具有 32 GB RAM 和 16 个线程的服务器。该服务器在 PHP 中有一个 API,它接收来自其他外部 API 的许多请求,我在 PHP-FPM 中进行了配置以支持所有这些请求而不会降低站点速度,这在 1 年内运行良好,现在请求实际上翻了一番,这正在离开网站页面很慢,加载需要 5-6 秒,这是不正常的。也许我必须在 PHP-FPM 中重做一个配置来支持这种对请求的新需求,在这种情况下你会怎么做?
我的服务器有 32 GB 的 RAM,但只使用 2.5 GB,可以吗?是否可以在 RAM 和 CPU 之间保持平衡以提高 CPU 性能还是我在胡说八道?
pm.max_children = 32
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
pm.max_requests = 1000
运行进程的 PHP-FPM 有 32 个子级。
我会使用pm = static的 php-fpm 设置。根据我的经验,高流量网站使用 pm 静态而不是动态/按需更好地工作。
您可以使用以下命令了解 php-fpm 进程使用的内存:
我会用这样的东西修改 php-fpm 配置:
之后重启php-fpm!
作为旁注,这是一篇非常有趣的文章,可以解释很多并指导您找到最佳配置: https ://thisinterestsme.com/php-fpm-settings/