繁体   English   中英

社交网站的Apache MPM

[英]Apache mpm for a social networking site

我正在尝试建立一个社交网站,该网站可以同时登录大量用户,每次登录的上限大约为5000。

我计划使用LAMP堆栈。 Apache可以有2 mpms(多个处理模块)-preforker(每个请求派生一个新进程)和worker模型(每个请求使用线程)。

考虑到我的服务器端代码是用PHP编写的,并且我希望能够按需扩展网站,这是最好的选择。 我们正在使用的某些第三方PHP模块不是线程安全的,因此理想情况下建议使用preforker。

  1. 有什么方法可以减少预分叉过程之间的延迟
  2. 有什么办法可以与php一起使用worker模块?

在LAMP堆栈上运行的社交网站通常使用哪种模式?

如果您打算使用服务器推送服务,则apache不是一个不错的选择。 看一下切诺基nginx ,它们与php-fpm一起使用比与apache2的mod_php更好,因为您不需要CGI支持(切诺基和nginx仅支持FastCGI),而仅PHP。

几周前, 我将WordPress网络从mod_php的apache2-mpm-itk迁移到了nginx + php5-fpm 结果,系统负载急剧下降,内存负载变得可预测,并且用户体验似乎快得多。 我还从loadimpact.com添加了一些免费测试,新配置的服务时间也更好。

如此之多的请求并不是Apache的首选。 例如,使用nginx会更好。 http://nginx.net/

“每台服务器10000+并发连接数”听起来不错;-)

如果您不将PHP与mod_php一起使用,则可以在工作模式下使用Apache。 在Fastcgi mod中使用PHP,为此必须尝试php-fpm。

对于当前的Apache稳定版本(2.2),如果要在chroot模式下使用它,将会遇到问题。 但是您可以尝试使用Apache 2.3或等待2.4,然后使用mod_proxy_fastcgi而不是mod_fastcgi或其他。 您也可以使用此版本的Apache测试新的事件basef mpm。 或者当然,您可以尝试使用@petermolnar回答的其他Web服务器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM