Linux Xen VPS에서 Apache 및 MySQL 최적화


10

128M RAM의 Ubuntu 8.10을 실행하는 Xen VPS (가상 사설 서버)가 있습니다.

Google을 통해 "저 메모리 VPS를 위해 Apache 및 MySQL을 최적화하는 방법"페이지를 찾았지만 모순 된 정보를 제공합니다. 서버 결함을 묻습니다. 메모리 부족 VPS 구성을 위해 Apache와 MySQL을 어떻게 최적화합니까?


두 사람이 Apache 대신 nginx 를 사용하도록 제안했습니다 . 나는 그것에 대해 살펴볼 것이지만, 익숙하지 않은 (나에게) 웹 서버 위에 응용 프로그램 스택을 구성하는 것에 대해 배우는 것을 피하기 위해 가능한 경우 Apache를 고수하고 싶습니다.

답변:


7

Nginx는 훌륭하지만 Apache를 사용하려면 기본 설정에서 약간 축소 할 수 있습니다.

  • 프리 포크 대신 작업자 MPM을 사용하십시오 (작업자 MPM Apache에는 더 이상 "연결 당 프로세스"모델이 없음).
  • 로드중인 모든 공유 모듈을보고 필요없는 모듈을 제거하십시오.
  • 응용 프로그램 서버를 Apache에 포함시키지 마십시오 (예 : mod_python, mod_php 등). 대신 응용 프로그램 서버를 별도의 프로세스로 실행하고 Apache 프록시를 사용하십시오 (예 : Python 코드의 경우 데몬 모드에서 mod_wsgi 사용). 이렇게하면 정적 콘텐츠를 제공하는 Apache 스레드가 불필요하게 팽창되지 않습니다.
  • Apache 구성에서 StartServers, MaxClients, MinSpareThreads 및 MaxSpareThreads 설정을 줄이십시오. 예상로드에 따라 기본 설정에서 5 배 이상 줄일 수 있습니다.

2

메모리 제약이있는 경우 가능한 경우 nginx를 대안으로 사용하는 것이 좋습니다. Apache보다 훨씬 적은 메모리를 사용하며 필요에 따라 필요한 모든 것이 될 수 있습니다.

보너스로 nginx는 Apache보다 훨씬 빠른 경향이 있습니다. =)


2

아파치 아파치, 그것은 연결 모델 당 프로세스가 낮은 메모리 VPS와 함께 재생되지 않습니다.

대체품으로 nginx를 제안합니다.


4
이것은 1.3의 문제입니다. apache 2.x는 적은 수의 프로세스에서 많은 스레드를 실행하는 MPM을 포함한 플러그 가능한 프로세스 모듈을 허용합니다. 모든 맛을 맛볼 수있는
Vagnerr

예, 그러나 nginx는 여전히 작은 프로세스입니다
Dave Cheney

2
네,하지만 당신이 말한 것은 아닙니다
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.