了解更多请求的网页的Apache设置

时间:2018-08-27 10:16:14

标签: php wordpress apache server

我有一个wordpress网站,其主页上有大约200个请求,包括js,css,图像等。我正在使用minSpare Server的默认apache设置为5,最大备用为10,MaxRequestWorkers 150,每个请求最大子级0。

考虑首页上有10个并发用户,我需要了解这些设置是什么以及理想的设置是什么。我正在AWS的T2介质实例上运行。数据库位于RDS上。每个apache进程平均消耗约120MB的RAM。我知道,我应该使用CDN,但是我需要根据目前的排名了解apache的行为。

3 个答案:

答案 0 :(得分:1)

  

我将minSpare Server的默认apache设置设为5,最大备用   作为10,MaxRequestWorkers为150,每个请求的最大子级为0。我需要   了解这些设置是什么,我的理想选择是什么   设置,考虑首页上有10个并发用户。

  • minSpare服务器-这是等待传入请求的服务器的最小数量。除非您的站点非常繁忙,否则minSpare Server不需要任何调整。当等待的服务器数量减少时,将创建更多服务器(从每秒1到每秒2 ^ n(n),最大为每秒32)。将此设置为5应该可以。
  • maxSpare Server -与上面一样,仅为最大值。同样,这不需要任何调整。当有更多等待服务器可用时,它们将被杀死。默认设置为10应该符合您的要求。
  • MaxRequestWorkers -这是服务器可以同时执行的进程(和客户端连接)的限制。在大多数情况下,此设置应该为256。这足以同时处理200个请求。
  • 带有“ 每个请求的最大子项数量””,我认为您的意思是 MaxConnectionsPerChild (MaxRequestsPerChild,这是旧名称)-这“设置了对单个子服务器进程将处理。”如果将其设置为0,则该进程将永不消失。您可以将其设置为例如500,以防止内存泄漏。

所有这些信息都来自正式的Apache Http Server文档。

我还建议考虑symcbean所说的内容。这些只是4个参数,可用于调整,因为您没有提供太多信息。不过,我希望我的回答对您有所帮助。

答案 1 :(得分:0)

加载200多个资源对您的网站和Google SEO都是一件坏事。 我建议您通过以下方式解决此问题,

  1. 延迟加载图像
  2. 将多个CSS文件合并为一个或多个用于生产,但是为了进行开发,您可以保留与现在相同数量的文件。
  3. 第2点也可用于JS文件。延迟加载也是一个不错的选择。

答案 2 :(得分:0)

Web性能通常被认为是可以解决的问题-但这并不意味着它容易。驾驶飞机,脑外科手术和时钟制造也可以解决问题,但是您不会在公告板上的帖子后面学习如何做。

您尚未说明目标是-降低运营成本,提高性能或增加容量。

在一个页面上有200个以上的请求可能是一个问题(在某些极端情况下影响最小)。通过调整您列出的MPM特性,可能在很大范围内可以提高性能,但是1)这些只是对性能有重大影响的30多个参数中的少数几个; 2)正确的设置取决于流量图案。 BTW“每个请求的最大子项数”不是Apache配置。

  

在首页上考虑10个并发用户

这不是有意义的指标。页面加载时间是多少?渲染时间?来自单个客户端的请求的并发级别是多少?来自所有客户?每个请求的平均响应时间是多少? TTFB?系统平均负载? CPU使用率?这与活动的httpd进程数有什么关系?它们是进程还是线程? IO工作量是多少? (请不要回答-我的意思是,您需要先学习问题,然后才能获得明智的答案)。

  

每个apache进程平均消耗约120MB RAM

那是很多How did you measure it?如果确实有10个HTTP / 1.1客户端试图同时加载页面,则您的apache进程将消耗(10x6x120)/ 1024 = 7Gb内存(而您只有4个)。但我怀疑事实并非如此。

您需要:

1)做更多研究

2)制定具体目标

3)确定当前可用和相关的指标

4)添加更多符合您目标的仪器

5)获取一些基线数据

6)尝试改变事物

7)衡量影响

8)重复