2010-01-22 4 views
4

참고 : 웹 프로그래밍에 익숙하지 않으므로 질문이 사소한 경우를 제 생각에는 용서하지 마십시오. 또한 이러한 제품의 out-of-box 비교가 "결함이있는 방법"에 대해 언급하지 마십시오. 문제는 그들이 서로 경쟁하는 방식이 아니라 모든 유형의 놀라운 속도가 느린 이유에 관한 것입니다.웹 CMS 성능 : pages/second (Joomla, Drupal, Plone, WP)

그냥 Joomla, Drupal, Wordpress, Plone3 & 4가 테스트 된 benchmark에 대해 읽으십시오. 나에게 충격을 주었던 것은 이것이다. 상자 밖에서는 약 4-14 페이지를 초당 수행했다. 어떻게 이것이 가능한가, 왜 그들은 그렇게 천천히 움직이는가? CMS는 단지 DB를 쿼리하고 좋은 템플릿으로 압축 된 데이터를 추출해야합니다. DB는 빠릅니다. 템플리트는 빠르지 만 (텍스트 대체, 별다른 문제가 아님) 우리의 기계는 초고속입니다. 그러나이 높은 프로필 CMS는 몇 페이지/초 밖에 생산할 수 없습니다. 어째서?

+1

성능이 중요한 경우 성능을 위해 빌드하십시오. 기능이 중요한 경우 기능을 빌드합니다. 대부분의 CMS는 기능, 성능 및 신선도 간의 절충에 뛰어납니다. 캐싱으로. 공개 웹 사이트의 99 %는 초당 지속되는 두 자리 숫자 요청을 결코 달성하지 못합니다. 일반적으로 더 많은 맞춤형 솔루션에 투자합니다. – stephbu

답변

2

모든 작업을 처리하는 데 많은 시간이 걸리기 때문입니다. IT는 "쿼리, 바꾸기, 렌더링"의 문제가 아닙니다. 모든 thes 제품은 다양한 범위의 사용 사례에 맞게 만들어지며 어느 정도 확장 할 수 있도록 만들어 졌으므로 사용자가 말하는 세 가지 기본 작업이 모두 많은 시간으로 나뉘어 많은 작업으로 나뉩니다.

모든 것이 평등합니다. 시스템이 유연해질수록 느리게 처리되어 "즉시 사용할 수 있습니다".

+1

동의 함.그는 또한이 경우 공정한 캐싱으로 테스트를 실행하지 않았지만 대부분의 경우 처리 시간을 절약하기 위해 인덱스 페이지와 같은 페이지를 캐시합니다. Wordpress는 캐시와 함께 매우 빠르지 만 그 자체로는 다른 것과 마찬가지로 여러 애플리케이션에 적합하기 때문에 가장 빠르지 않습니다. – Bartek

+0

"당신이 말하는 3 가지 기본 작업은 많은 시간과 많은 시간을 소비하는 많은 작업으로 나뉘어져 있습니다."그래서 처리 시간 (CPU)과 파이썬과 PHP 같은 동적 언어의 사용이 무엇입니까? – Noonethere

+0

종류가 있습니다. 그러나 동적 인 문제를 사용하는 것보다 개발자가 충족 시키려고하는 요구 사항과 개발자가 이러한 요구 사항을 충족시키기 위해 정교한 아키텍처의 문제가 중요합니다. 당신은 초고속 과정을 처리하는 벌거 벗은 보너스 CMS를 만들 수 있습니다 ... 그러나 그것도 woudnt이 가지고있는 모든 기능을 가지고 있습니다. – prodigitalson

1

비교적 복잡한 시스템입니다. 플러그인을 사용하면 많은 후크가 허용되므로 요청에서 응답까지 워크 플로에 많은 단계가 있습니다.

그러나 실제로는 캐싱 (인앱 또는 opcode 캐싱)이 성능에 엄청난 향상입니다.

저는 Plone에 익숙하지 않지만, PHP CMS는 기본적으로 매 요청마다 거의 모든 시스템을로드하고 해석해야합니다. 제 생각에는

0

:

CMS 및 프레임 워크는 당신이 사용할 수있는 당신이 필요로하는 모든 것들의 생각하기 때문에 : AJAX 출력 템플릿과 많이,

  • 필터
  • 는 PDF를 작성 UserInput 사용자가

    같은 더보기

귀하가 필요로하는 바에 달려 있습니다.

임은

는 CMS 그냥 DB를 조회하고 좋은 템플릿에 포장 데이터를 휘젓다해야 쓴 동의하지.

CMS를 ... 더 작정 더 많은 일을

그리고 마지막으로는 WEP Aplication와 데스크톱 소프트웨어 속도를 비교 해달라고에서

.

1

이에 공격을하지 않지만, 웹 프로그래밍하여 익숙를 설명하여 질문을 서문에, 다음에 표시되는 내용의 성능을 비판하는 것은 '단순하게하십시오 큰 차이가있다 '수술은 조금 근시안적이다.

CMS가 해결하는 일반적인 문제와 동적 웹 페이지 및 HTTP 작동 방식에 대한 일반적인 이론 및 실제에 대해 좀 더 배우는 것이 좋습니다. 그것은 단순한 I/O 작업과는 거리가 있습니다.

또한 실제 사용을 위해 CMS를 실행하는 모든 사용자에게 캐싱 솔루션을 찾아 주실 것을 적극 권장합니다. 캐싱은 웹 기술에서 발생하는 많은 '속도'문제를 해결하기위한 것입니다. 일반적인 웹 스택의 일부 여야합니다.

+0

잘했다. (15 자로 채우기 ...) – prodigitalson

+0

제 질문은 CMS에 대한 비판을 의미하지 않았습니다. 나는 그 대답을 알고 싶었 기 때문에 물었다. 그게 다야. – Noonethere

+0

기사에서 사람들은 4 ~ 20 페이지/초의 캐시되지 않은 속도를받는 경향이 있으며, 너무 오래 걸리는 것에 대한 설명을 보지 못했습니다. 그래서, "왜 stackoverflow 요청할 수 있습니다"생각했습니다. 이 태도의 문제는 무엇입니까? – Noonethere

3

CMS는 DB를 쿼리하고 멋진 템플릿으로 압축 된 데이터를 추출해야합니다.

그리 많지 않습니다. 주요하고 현대적인 CMS 시스템은 믿을 수 없을 정도로 복잡한 짐승입니다. 일반적인 페이지는 본문 텍스트 및 제목뿐 아니라 여러 사이트 영역의 정보를 집계하는 동적 카테고리 기반 콘텐츠 쿼리입니다. 보안 트리밍 및 사용자 별 컨텐츠 영역은 말할 것도 없습니다. 예를 들어, 로딩 http://www.volvogroup.com에는 최소 7 개 이상의 쿼리가 포함되며 탐색 구조를 생성하고 외부 시스템에 연결하여 뉴스 및 투자자 관계 데이터를 가져 오는 사이트 구조를 통한 재귀가 포함됩니다. 이를 고려해 볼 때 초당 수백 개의 히트를 제공하는 서버 팜이 필요하다는 것은 놀랄 일이 아닙니다.

2

그들은 몇 가지 이유로 느린 :

1 - 그들 대부분은 더 많은 파일, 더 많은 코드 및 더 많은 DB 쿼리를 의미 매우 모듈입니다.

2 - 대부분 (모든 단어를 표시하는 것이 아니라) 모든 것을 시도하고 가능한 모든 상황에 대한 시스템을 디자인하면 더 복잡하고 조정하기가 더 쉽습니다.

3 - 대부분 (현재) PHP4와 PHP5를 모두 지원합니다. 이것은 다시 추가 작업입니다.

4 - 그들은 비 기술적 인 사용자가 사용할 수 있다고 주장되어 가장 효율적이지 않은 방식으로 일을해야하는 경우가 많습니다. 즉 Drupals CCK/Views를 사용하면 효과적으로 프로그램 할 수없는 사람들이 데이터베이스 테이블과 SQL 쿼리를 생성 할 때 이러한 테이블/쿼리라는 결함은 매우 일반적인 디자인이며 사용자 정의 코딩 작업과 비교할 때 비효율적입니다.

5 - 그들은 많은 DB 쿼리를 사용하는 경향이 있으며, Drupal은 매우 기본적인 페이지에 40 정도를 사용합니다. 포럼을 검색하면 일부 페이지가 수백 또는 1,000 개가 넘는 쿼리를 작성한다고 주장하는 사람들의 보고서를 볼 수 있습니다.

그들은 물론 캐싱을 제공하고 드루팔 (Drupal은 Drupal (및 Joomla 's) 판매 포인트 중 하나 인 결함이 부스트 모듈과 같은 것들로부터 꽤 좋은 성능을 얻을 수 있음)은 커뮤니티 사이트, 포럼, Digg 사이트를 만들 수 있음을 나타냅니다. 그것은, 캐싱 사용이 제한 모든 사이트 ...

0

CMS를이

그리고 마지막하지만 적어도

는 WEP Aplication와 데스크톱 소프트웨어 속도를 비교 해달라고 ... 더 작정 더 많은 일을한다.

큰 차이가 있습니다

관련 문제