我的问题是什么是Apache Web服务器2.2.2可以处理的最大用户数,我有一个网站,有时会超过300 +并发用户,但是Apache默认configuration设置为最大150,我知道我可以增加这个值,但是如果我担心我可能会运行Apache可以处理的容量,我的服务器是相当强大的与八核心AMD处理器与16个GM内存
我如何确定Apache可以处理多less个请求,
一般来说,什么选项/configuration为服务器负载最佳优化。 即禁用保持活着..等等
当我增加最大用户的大小,MySql吃了大部分的处理器能力超过150%的CPU有时….不知道为什么..
任何专家?
Apache带有40-100个最大线程。 可以增加它以允许同时处理更多的线程。
在对其进行任何更改之前,应监视应用程序。 根据响应,尝试相应地更改“ThreadsPerChild”和“AcceptThreads”。
“最大”线程数量的缺省值通常是足够的; 然而,可能有这样的条件,这个数字可能不得不增加。 线程的使用可以被监控。 要进行监控,请启动管理实例,选择相关的HTTP服务器,然后选择左下角的实时服务器统计信息。
如果空闲线程接近或为零,这是一个问题。 只要空闲线程为零,就不能建立新的客户端连接。 新客户端将处于等待状态,直到线程变为可用。 我们对这个条件的建议是把指令ThreadsPerChild加上一个增加的值,如果它在40到100的范围内大约是当前值的两倍,如果是大于100,则加上50.所需的最小值(对于最大值参数)只能通过试验和错误找到。 如果增加值后服务器运行顺利,则停止测试。
( 来源 )
建议
请使用Keep Alive,因为它会增加服务器的性能。 仅在Web或应用程序之间存在防火墙时禁用保持活动设置。 或者你正在面临丢包问题/连接重置味精。
您将不得不编辑httpd.h文件,以允许超过256硬编码限制的更大的maxclient,然后重新编译httpd程序。 这在httpd的配置文件中被建议。
有关概述,请参阅本指南: http : //www.devside.net/articles/apache-performance-tuning
主要是关于您选择的Apache MPM(基于线程或基于进程)和它的设置。
然后,您需要将其与KeepAlive设置(我使用基于线程的MPM,因此设置KeepAlives打开和3秒)相匹配。
你在Linux或Windows下使用Apache吗? 哪个MPM?