[server] Linux Xen VPS에서 Apache 및 MySQL 최적화

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

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


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



답변

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

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

답변

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

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


답변

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

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


답변