2011-09-28 2 views
1

동시에 한 번에 최대 5000 명의 사용자가 로그인하는 소셜 네트워킹 웹 사이트를 구축하려고합니다.소셜 네트워킹 사이트의 Apache mpm

램프 스택을 사용할 계획입니다. 아파치는 2 mpms (멀티 프로세싱 모듈) - 프리 포커 (요청 당 새로운 프로세스 포크)와 ​​작업자 모델 (요청 당 스레드를 사용)을 가질 수 있습니다.

내 서버 측 코드가 PHP로되어 있고 필요에 따라 웹 사이트를 확장 할 수 있기를 원한다면 어떤 것이 더 바람직할까요? 우리가 사용하고있는 일부 써드 파티 PHP 모듈은 쓰레드에 안전하지 않으므로, preforker가 이상적입니다.

  1. 프로세스를 교환하는 사이에 지연이
  2. 을 preforking 감소 할 수있는 방법이 나뿐만 아니라 PHP로, 작업자 모듈을 사용할 수있는 어떤 방법이 있나요인가?

일반적으로 LAMP 스택에서 실행되는 소셜 네트워크 사이트는 어떤 모드를 사용합니까?

+0

https://www.howtoforge.com/configuring_apache_for_maximum_performance를 시도해보십시오. – Chloe

답변

0

Apache는 너무 많은 요청에 선호되지 않습니다. 당신은 nginx 예를 들어, 더 좋을거야. 당신이 서버 푸시 서비스를 계획하는 경우 http://nginx.net/

"서버 당 10000 동시 연결";-)

1

충분히 좋은 소리, 아파치는 좋은 선택이 아니다. cherokeenginx을 살펴 보시고 CGI 지원 (cherokee 및 nginx에서는 FastCGI 만 지원) PHP 만 필요하므로 php-fpm과 mod_php가 apache2보다 훨씬 잘 작동합니다.

몇 주 전 I migrated my WordPress network from apache2-mpm-itk with mod_php to nginx+php5-fpm. 결과적으로 시스템로드가 급격히 감소하여 메모리로드가 예측 가능해졌으며 사용자 경험이 훨씬 빨라졌습니다. 나는 또한 loadimpact.com에서 몇 가지 무료 테스트를 추가했습니다. 제공 시간은 새 구성에서도 더 좋습니다.

0

mod_php와 함께 PHP를 사용하지 않으면 Apache를 작업자 모드로 사용할 수 있습니다. Fastcgi 모드에서 PHP를 사용하십시오. php-fpm은 반드시 시도해야합니다.

현재 아파치 안정 버전 (2.2)에서는 chrooted 모드로 사용하려는 경우 문제가 발생합니다. 그러나 아파치 2.3을 사용해 보거나 2.4를 기다리고 mod_fastcgi 또는 다른 대신 mod_proxy_fastcgi를 사용할 수 있습니다. 이 버전의 Apache로 새로운 이벤트 basef mpm을 테스트 할 수도 있습니다. 물론 @petermolnar 님의 답변으로 다른 웹 서버를 사용해 볼 수도 있습니다

관련 문제