문제

나는 Drupal 6 설치를 가진 사람을 돕고 있으며, 컨텐츠 유형을 정의하는 단계에만 있어도 사이트의 성능에 매우 고민합니다. 모듈 목록을로드하면 30 초 이상이 걸릴 수 있으며 콘텐츠 유형을 가져 오는 데 3 분이 걸렸습니다.

이것은 대형 공유 유닉스 시스템에 설치되어 있으며 실제 문제가없는 동일한 서버에서 다른 D6 설치를 실행하고 있습니다 (일부 속도가 느리지만이 나쁜 것은 없습니다). 나는 오늘 오후에 사이트의 모든 비 코어 모듈을 장애가있는 시간을 보냈으며 모듈 목록 페이지의로드 시간을 약 5 초로 얻을 수있었습니다. 모듈의 모듈 그룹을 다시 활성화함에 따라 가장 큰 성능을 얻은 그룹은 CCK 모듈 패밀리 (모듈 목록의 페이지로드 시간이 15-20 초 증가) 인 것 같습니다.

다시 말하지만,이 서버에는 CCK (및 대부분의 다른 모듈)를 실행하고 있으며 이와 같은 경험이없는 다른 사이트가 있습니다. 주요 차이점은이 매우 느린 사이트에는 46 개의 개별 컨텐츠 유형과 162 개의 CCK 필드가 정의 된 컨텐츠 유형과 CCK 필드가 있다는 것입니다.

사이트 성능 (적어도 특정 작업에서 컨텐츠 유형을 작성하고 편집하는 것과 관련이 있음)과 콘텐츠 유형 및 사용자 정의 필드 수 사이에 직접적인 연결이 있다는 결론을 내 렸지만 정확히 무엇을 결정할 수 없었습니다. 이 컨텐츠 유형과 필드의 영향은 영향을 완화하기 위해 할 수있는 일이 있는지 여부입니다.

Devel 모듈을 설치했으며 모듈 페이지의 가장 큰 성능 배출은 CACHE_MENU와 관련이있는 쿼리에 있다는 것을 발견했지만 컨텐츠 유형 및/또는 필드 수에 직접 연결되어 있는지 확실하지 않습니다.

모든 지침에 감사드립니다!

고마워요, 폴

도움이 되었습니까?

해결책

첫째 : 모듈 페이지는 실제로 악한 짐승입니다. Drupal의 모든 내부 캐시를 완전히 플러시하고 새로 설치된 모듈에 최신 데이터가 있는지 확인하기 위해 재 구축하기 때문입니다. 그것은 사이트 성능을 예측하는 것이 아닙니다 (일반적으로 특정 행정 작업만이 이러한 종류의 캐시를 플러시하기 때문에).

둘째 : CCK가 모든 것이 최신 상태인지 확인하기를 원하기 때문에 콘텐츠 유형을 가져 오면 캐시가 플러시됩니다. 차선이지만 거기에 있습니다.

마지막으로 : CCK 필드 및 컨텐츠 유형의 수는 캐시를 플러시하고 재건 할 때 작업이 얼마나 많은지에 영향을 미칩니다. CCK는 정의 된 모든 컨텐츠 유형 및 해당 필드에 대한 모든 정보를 가져오고 모든 것을 설명하기위한 데이터 구조를 작성하고 나중에 참조하기 위해 캐시 된 버전을 사용합니다. 수백 개의 필드와 수십 개의 컨텐츠 유형을 사용하면 데이터 캐시를 재건하는 데 시간이 오래 걸리면 모듈 페이지에서보고있는 지연과 새 콘텐츠 유형을 가져올 때 지연을 악화시킵니다.

좋은 소식은이 특정 문제가 사이트의 전반적인 성능에 너무 큰 영향을 미치지 않고 캐시를 플러시하는 관리 조치 일뿐입니다.

다른 팁

이것은 내가 다른 드 루팔 질문에 대해 내가 한 것과 같은 대답입니다. Eaton의 답변이 문제를 해결하지 못한 경우 Views 모듈과 동적 메뉴 재건을 살펴 봐야 할 것입니다. 매번 메뉴는 재건되어 100 또는 1000의 쿼리로 이어집니다. 조인의 방식에 따라 동일한 테이블에서 두 개의 유사한 결합으로 끝나면 쿼리 수가 두 배로 증가 할 수 있습니다. 자세한 정보는 찾을 수 있습니다 여기

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top