首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Apache2,4 2,4+ Prefork +维持生命

Apache2,4 2,4+ Prefork +维持生命
EN

Server Fault用户
提问于 2018-01-18 09:43:16
回答 1查看 2.2K关注 0票数 0

我正试图加快一个网站的速度,其中有许多图片是从一个单独的子域static.example.com (与www相同的IP )提供的。

使用pingdom注意到前5-6个请求(在static.example.com上)正在进行完全连接(DNS+SSL+Send+Wait+Receive+Connect)。

它与预叉配置有任何关系吗?

代码语言:javascript
复制
StartServers            20
    MinSpareServers           20
    MaxSpareServers          20
    ServerLimit             150
    MaxRequestWorkers        150
    MaxConnectionsPerChild   10000
    MaxRequestsPerChild 500

这是一台4GB的机器,没有太多的流量。

Avg apache大小:

{print $6/1024;}{ avg += ($1-avg)/ NR;} {print avg“MB";}‘

11.2921 MB

MySQL大约500 MySQL

KeepAlive On,MaxKeepAliveRequests 100,KeepAliveTimeout 5

不知道怎么解决这个问题。切换到MPM事件模块有帮助吗?

EN

回答 1

Server Fault用户

发布于 2018-01-18 12:05:07

你应该转到活动上去,是的。

使用预叉,每个连接都需要一个进程。CPU方面,与新线程相比,生成进程成本最高,除非您在开始时就“预加载”它们。

但是,为了提供静态内容和规范,您可以使用事件mpm轻松地拥有httpd,并且可以轻松地允许1000个线程使用很少的进程。

举个例子:

代码语言:javascript
复制
StartServers            1
ServerLimit             5
MinSpareThreads         100
MaxSpareThreads         600
ThreadsPerChild         200
ThreadLimit             200
MaxRequestWorkers       10000
MaxConnectionsPerChild  10000000

如果您因为被迫使用mod_php模块(比如线程安全的mod_proxy_fcgi模块)而使用预叉,请考虑迁移到mod_proxy_fcgi -> PHP。

httpd wiki上的php信息

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/892830

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档