我们使用 nginx + php-fpm 托管 10 个网站(其中大多数使用 Drupal 6 或 Drupal 7)。我们的 VPS 是低端的(只有 1GB RAM,64 位操作系统和有限的 CPU)。访客数量中等偏低,但其中许多网站同时的流量足以导致超时。
1)在这种情况下使用 php-fpm 是否正确,或者最好返回到 Apache mod_php
?
2) 为每个站点保留一个 fpm 池是否更好,或者在这种极端情况下为许多站点使用一个池会有什么区别?(安全问题除外)
3) 是否有一个公式可以计算pm.max_children
、、和APC 设置的最佳值(使用 Ubuntu 12.04 LTS 下的默认设置启用)?pm.start_servers
pm.min_spare_servers
pm.max_spare_servers
总的来说,我们非常感谢有关以低资源运行 php-fpm 的任何建议。
答案1
请参阅此文章,了解如何为每个站点创建不同的池: http://www.makina-corpus.org/blog/install-drupal-php-fpm-fastcgi-apache-and-chroot-php-fpm
我在 #httpd 上得到的建议是 mod_php 是老式的,无法像 fastcgi 和 php-fpm 那样扩展。你正在朝着正确的方向前进。
如果您负担得起,内存越大越好。许多提供商会让您就地调整虚拟机的大小。