【发布时间】:2013-03-26 19:46:58
【问题描述】:
所以有一个包含 10-12 个页面的 Web 应用程序,其中包含许多 POST/GET DB 调用。当站点流量达到 1000 左右(并发用户数)非常少时,我们通常会遇到 apache 崩溃/其他问题,我们已经更新了具有良好 RAM 和资源的服务器。当我们的系统管理员对 blitz 和其他自定义脚本进行负载测试并建议远离 Apache 时。有些事情对我来说没有意义。考虑到我们有用于缓存的 cloudflare,像 Apache 处理几千个并发用户也不错。这是他的建议:
用 Nginx+php-fpm 替换 Apache+mod_fcgi 可以让服务器处理更多的用户,然后进行测试。 或者 2. 用于测试:需要 10-20 台服务器来运行一个场景。基本上,需要的是一个更复杂的 blitz.io 类似物。创建一台服务器,这需要花费所有这些时间,然后只需将其克隆到云中并支付大约 1 小时的测试费用乘以所需的服务器数量。
再次有许多 DB 调用和 HT 访问。还有在这种情况下,是什么让 Nginx 比 apache 更好?
【问题讨论】:
-
他还补充说:Apache 以每秒大约 200 个请求的速度死亡。好吧,如果您想保留此设置,也许我可以将其设为 300。但如果我们能摆脱 Apache,我也能做到至少 1000。
-
Apache 似乎已达到文件描述符限制(请参阅httpd.apache.org/docs/current/vhosts/fd-limits.html)。大多数linux系统默认只允许用户打开1024个文件。这对于 Web 服务器来说显然是不够的,因为每个并发连接至少需要 1 个文件描述符。
标签: mysql apache networking operating-system system