우리는 Drupal 6을 실행하는 사이트와 Views, CCK 등과 같은 꽤 표준적인 모듈 세트를 가지고 있습니다. 프로덕션 사이트는 잘 돌아가고 있지만 프로덕션 서버의 SQL 덤프를 작성하고 로컬 샌드 박스에 데이터를 가져온 후에 작업이 중단되었습니다.어떻게 Drupal 6이 모든 메모리와 충돌을 일으키는 지 확인하는 방법은 무엇입니까?
더 정확하게 말하면, 프론트 페이지를로드하는 것과 같이 샌드 박스의 Drupal 인스턴스에 단일 요청을 한 후, 10-20 개의 httpd 프로세스가 갑자기 시스템의 모든 CPU 및 메모리를 사용하기 시작합니다. 몇 초 안에 모든 mysql 핸들이 모두 사용되었고 사이트는 오프라인 상태가되었습니다. 프로세스는 아파치 전체 아파치를 종료 할 때까지 그들이하고있는 일을 계속할 것이다.
서버에서 출력을 얻을 수 없기 때문에 디버깅 할 수있는 방법을 생각할 수 없습니다. 데이터베이스에 무한 루프를 일으키는 쓰레기가있을 수 있습니까?
여기에 top
의 출력 스 니펫이 있습니다. 이는 모두 단일 페이지로드의 결과입니다.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7690 apache 16 0 337m 52m 13m S 27.4 1.4 0:04.42 httpd
7715 apache 15 0 337m 52m 13m S 24.1 1.5 0:08.69 httpd
7777 apache 15 0 337m 52m 13m R 20.8 1.4 0:09.94 httpd
7883 apache 16 0 337m 52m 13m S 19.5 1.5 0:12.39 httpd
7574 apache 16 0 337m 52m 13m R 17.2 1.4 0:06.30 httpd
7678 apache 15 0 337m 52m 13m S 16.2 1.4 0:02.26 httpd
7695 apache 15 0 337m 52m 13m S 15.5 1.4 0:10.29 httpd
7774 apache 15 0 337m 52m 13m S 15.5 1.4 0:04.62 httpd
748 mysql 15 0 364m 67m 5408 S 15.2 1.9 15:37.77 mysqld
7847 apache 15 0 337m 52m 13m S 14.9 1.4 0:07.10 httpd
7839 apache 16 0 337m 52m 13m S 14.2 1.4 0:02.85 httpd
7879 apache 15 0 337m 52m 13m S 13.9 1.5 0:12.65 httpd
7851 apache 16 0 337m 52m 13m R 12.5 1.4 0:06.77 httpd
7724 apache 16 0 337m 52m 13m S 12.2 1.4 0:06.62 httpd
7882 apache 16 0 337m 52m 13m S 11.6 1.5 0:09.04 httpd
8273 apache 16 0 337m 52m 13m S 9.2 1.4 0:07.30 httpd
7712 apache 15 0 337m 52m 13m R 8.9 1.4 0:08.13 httpd
7742 apache 16 0 337m 52m 13m S 8.9 1.4 0:06.74 httpd
7754 apache 15 0 337m 52m 13m S 8.6 1.4 0:04.16 httpd
7739 apache 16 0 337m 52m 13m S 8.3 1.4 0:04.51 httpd
7787 apache 15 0 337m 52m 13m S 8.3 1.4 0:07.44 httpd
7819 apache 16 0 337m 52m 13m S 7.6 1.4 0:02.03 httpd
7755 apache 16 0 337m 52m 13m S 7.3 1.4 0:05.89 httpd
7766 apache 16 0 337m 52m 13m R 7.3 1.4 0:01.12 httpd
7894 apache 16 0 337m 52m 13m S 7.3 1.4 0:09.49 httpd
7814 apache 15 0 337m 52m 13m S 5.9 1.4 0:03.88 httpd
7576 apache 15 0 337m 52m 13m S 5.6 1.4 0:03.63 httpd
7829 apache 15 0 337m 52m 13m S 5.3 1.4 0:04.17 httpd
7579 apache 15 0 337m 52m 13m S 5.0 1.4 0:04.43 httpd
7817 apache 15 0 337m 52m 13m S 4.0 1.4 0:04.60 httpd
7789 apache 15 0 337m 52m 13m S 2.0 1.4 0:04.41 httpd
7820 apache 15 0 337m 52m 13m S 1.0 1.4 0:01.57 httpd
감사합니다. 감사합니다. 나는 실제로 kcachegrind를 사용하고 사랑했으며 그 이름을 잊어 버렸습니다. 이 문제는 이미지에서'getimagesize()'를 호출하는 커스텀 이미지 회전식 블록으로 판명되었습니다. 일부 이미지가 누락되어 이미지 주소가 무의식적으로 HTTP URL로 전달되면서 404 페이지가 생성되었습니다. 물론 404 페이지에는 블록이있어 무한 루프가 발생했습니다. – Kaivosukeltaja
좋은 무한 루프 :-) – regilero