gpt4 book ai didi

wordpress - PHP-FPM 为单个请求使用 40% CPU

转载 作者:行者123 更新时间:2023-12-02 17:43:35 29 4
gpt4 key购买 nike

(我在这个论坛上搜索了好几个小时,找到了一些主题,但没有一个对我有用)

我正在使用 Wordpress:Varnish + Nginx + PHP-FPM + APC + W3 总缓存 + PageSpeed

当我使用 Varnish 时,我第一次调用 www.mysite.com 它只使用了 10% 的 CPU。第二次调用,会被缓存。问题是在 URL 中传递请求参数


只有 1 个请求 (www.mysite.com?1=1) 它显示在 top 中:

PID  USER      PR  NI  VIRT  RES  SHR S %CPU %MEM   TIME+  COMMAND
7609 nginx 20 0 438m 41m 28m S 11.6 7.0 0:00.35 php-fpm
7606 nginx 20 0 437m 39m 26m S 10.3 6.7 0:00.31 php-fpm

页面完全加载后,上面的这些进程仍然处于事件状态。 2 秒后,它们被另外 2 个 php-fpm 进程(如下)取代,这些进程持续 3 秒。

PID USER       PR  NI  VIRT  RES  SHR S %CPU %MEM   TIME+  COMMAND
7665 nginx 20 0 444m 47m 28m S 20.9 7.9 0:00.69 php-fpm
7668 nginx 20 0 444m 46m 28m R 20.9 7.9 0:00.63 php-fpm

40% CPU 使用率仅为 1 个未缓存的请求!


奇怪的事情:

  • 页面加载后 CPU 使用率较高
  • 当我清除缓存(W3 和 Varnish)时,只需要 10% 的 CPU 来加载一个未缓存的页面
  • 这种高 CPU 使用率只是发生在传递请求参数Wordpress Admin

当我尝试执行 10 个请求(按 F5 键 10 次)时,服务器停止服务并在 php-fpm 日志中出现:

WARNING: [pool www] server reached max_children setting (10), consider raising it

我将该值提高到 20,同样的问题。

我正在使用 pm=ondemand(pm.max_children=10pm.max_requests=500)。

最初我使用的是 pm=dynamic (pm.max_children=10, pm.start_servers=1, pm.min_spare_servers =1, pm.min_spare_servers=2, pm.max_requests=500) 并且发生了同样的问题。

请问有人能帮忙吗?任何帮助将不胜感激!

附言:

  • APC 开启(98% 命中,2% 未命中)
  • 服务器是 Amazon Micro(613MB 内存)
  • PHP 5.3.26 (fpm-fcgi)
  • Linux 版本 3.4.48-45.46.amzn1.x86_64 Red Hat 4.6.3-2(我认为它是基于 CentOS 5)

最佳答案

首先减少缓存的堆栈。当您已经在使用从内存中提供服务的 w3 缓存时,为什么还要使用从内存中提供页面的 varnish?

W3cache 是 CPU 密集型的!它不仅可以缓存项目,还可以动态压缩、缩小和合并文件。

您的机器上总共有 512MB 的内存,这并不多,而且您的 CPU 能力也低于现代智能手机。由于 xen 虚拟化层,与根服务器相比,内存访问速度极慢 - 这就是少即是多的原因。

确保 w3cache 已正确设置,以便它实际缓存项目,然后预热缓存,您应该没问题。

看看 Google 的 nginx pagespeed 模块 https://github.com/pagespeed/ngx_pagespeed ,它可以做与 w3cache 相同的事情,只是效率更高,因为它发生在网络服务器中,而不是在 PHP 中

Nginx 也可以直接从 memcached 服务 http://www.kingletas.com/2012/08/full-page-cache-with-nginx-and-memcache.html (示例文章,可能需要更多调查)

关于wordpress - PHP-FPM 为单个请求使用 40% CPU,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17633190/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com