在一个问题上非常难过。希望能提供一些见识。
我经营着一个通过cloudflare提供服务的wordpress网站。我注意到我的服务器空闲CPU频繁地命中0。监视服务器后,我发现一次加载站点足以使空闲cpu占50%,而并发4个请求就足以使它最大化。
网站的99%的资源是通过cloudflare提供的。当客户端请求该站点时,命中服务器的唯一HTTP请求是:
status_code:200 2001:4898:80e8:b:2955:8e63:3b99:109e [19/Jul/2019:01:19:18 +0000] GET / HTTP/1.1
status_code:204 2001:4898:80e8:b:2955:8e63:3b99:109e [19/Jul/2019:01:19:19 +0000] POST / HTTP/1.1
status_code:200 2001:4898:80e8:b:2955:8e63:3b99:109e [19/Jul/2019:01:19:21 +0000] POST /wp-admin/admin-ajax.php HTTP/1.1
对于3个简单的HTTP请求如何占用1-2秒的50%的CPU,我感到非常困惑。
有趣的是,即使空闲cpu最大化为0%,该站点在1-2秒内仍可以正常加载。显然,这是cloudflare发挥其魔力的一种方式。奇怪的是,如果该站点能够在没有任何可用cpu的情况下正常加载,那么到底该怎么做才能消耗CPU?