왜 Apache가 많은 프로세스를 실행하고 있습니까? 과도한 RAM?


17

Apache가 LAMP 서버 (ubuntu 10.10)에서 여러 프로세스를 실행하고 있음을 알 수 있습니다. MySQL을 데이터베이스로 사용하여 Wordpress 사이트를 실행하고 있습니다. www-data가 너무 많은 메모리를 사용하는 것보다 apache2를 더 많이 실행하는 것처럼 보입니다.

ID      Owner       Size        Command   
31200   www-data    251236 kB   /usr/sbin/apache2 -k start
20678   www-data    250948 kB   /usr/sbin/apache2 -k start
25781   www-data    248888 kB   /usr/sbin/apache2 -k start
31045   www-data    248844 kB   /usr/sbin/apache2 -k start
19926   www-data    246480 kB   /usr/sbin/apache2 -k start
20749   www-data    239380 kB   /usr/sbin/apache2 -k start
32616   www-data    238632 kB   /usr/sbin/apache2 -k start
8846    mysql   238128 kB   /usr/sbin/mysqld
24178   www-data    234228 kB   /usr/sbin/apache2 -k start
32618   www-data    232344 kB   /usr/sbin/apache2 -k start
32615   www-data    232204 kB   /usr/sbin/apache2 -k start
19805   root    208156 kB   /usr/sbin/apache2 -k start

이것은 이전 직장 (CentOS)에서도 마찬가지입니다. 난 그냥 ... 그들은 모두 아이가 각 request.We에 대한 아파치 시작으로 인해이 생각에 성능 / 메모리 문제에 직면하지 처리했다 가정
Nandhini 아난드에게

흠. VPS이므로이 시스템의 메모리 부족에 대해 걱정하고 있습니다.
Trent Scott

답변:


19

Apache는 클라이언트 요청이 들어올 때 준비하기 위해 여러 프로세스를 실행하고 있습니다. 서버 프로세스 생성 속도가 느리므로 클라이언트를 기다리는 것이 가장 좋습니다.

메모리 사용의 경우 작업에 사용되는 실제 메모리 양인 RES 크기 (위로 표시)를 고려해야합니다.

너무 많은 메모리를 사용하는 너무 많은 apache2 프로세스가 있다고 생각하는 이유는 무엇입니까? 당신은 무엇을 기대합니까? 왜 그렇게 기대하십니까?


이것은 클라우드 기반 이미지에 있습니다. 작은 사이트에 필요한 것보다 더 많은 메모리를 사용하는 것 같습니다. 실제 메모리 : 총 496.36MB / 사용 가능한 92.02MB 스왑 공간 : 총 1024MB / 사용 가능한 975.93MB
Trent Scott

1
@Trenton : pawel의 대답으로 잘 들립니다. 실제로 mysql 충돌이나 메모리 부족으로 인해 문제가 발생하지 않는 한 괜찮습니다. 이 경우 이러한 생성 된 프로세스를 제한 할 아파치 구성을 찾아야합니다.
Nandhini Anand

2
리눅스는 대부분의 메모리를 사용하려고 노력할 것이다. 다른 내용이 없으면 캐시 및 디스크 버퍼에 RAM을 사용합니다. 빈 메모리는 메모리 낭비입니다 (RAM이 부족하지 않은 경우).
Paweł Brodacki 님이

3

Pawel의 답변에서 알 수 있듯이 아파치는 프로세스 풀과 함께 요청 당 프로세스 모델 (또는 mpm_worker를 사용하여 요청 당 스레드)을 사용합니다.

nginx와 같은 비 차단 IO 기반 웹 서버를 사용하여 메모리 사용량을 줄일 수 있습니다. 이렇게하면 서버가 연결 당 프로세스 / 스레드를 전용으로 지정할 필요가 없습니다.


2

Apache는 구성한만큼 많은 프로세스를 실행합니다. 프리 포크 또는 작업자 다중 처리 모듈을 사용하는 경우 구성이 다릅니다 .

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