微调Nginx和PHP的FPM

我有一个Ubuntu滴与以下内容:

  • 16GB RAM
  • 8个CPU

我正在运行nginx和PHP FPM,但是我似乎并没有从我的服务器中获得最大的收益。 我的CPU使用率和内存使用率都在10%左右,即使服务器在stream量变得密集时挂起。

nginx摘要:

  • worker_processes:8
  • worker_connections:6000
  • epoll已启用
  • multi_accept开启
  • 启用gzip并保持活动状态

php-fpm总结:

在我的www.conf文件中:

  • 下午:dynamic
  • 下午六点钟
  • pm.start_servers:75
  • pm.min_spare_servers:75
  • pm.max_spare_servers:90

其他一切都使用默认设置。

哦,我的ulimit被设置为99999,PHP的opcache被启用。

是否有任何清单,有人可以通过,以确保他们正在微调nginx和php-fpm充分利用服务器的资源?

这个configuration看起来很合适 您可以尝试提高和降低PHP-FPM进程的数量(目前限制在1600) – 有时候更高并不总是更好,因为这些进程正在做什么可能会遇到高并发性的性能问题。 试着把它放下来说100,看看它做了什么。 它不一定会限制一次可以连接的连接数量,因为其他连接在等待处理时仍然保持打开状态并排队。

但是说,我不认为这是你的问题。 这很可能是一个简单的事实,你是I / O绑定,这意味着你的数据库或文件访问是瓶颈。 如果您使用的是数据库,请查看相应的configuration。 有了大量的RAM,确保它有足够的缓冲区大小(例如InnoDB,给它一个很大的缓冲池大小,也许几Gb)。 并确定缓慢的查询并优化它们。