1

주제: 1.1 버전 속도문제

최근 1.1.0.x 로 업글 이후에 블로그 로딩 속도가 굉장히 느려졌습니다.
주소 입력하고 나면 페이지 뜨는데 3~4초씩이나 걸리는게 좀 심하다 싶어서 오늘 프로파일링 해보았습니다.

제 블로그의 경우, 우선 PHP 코드 실행에만 2.x 초가 걸리더군요.
그런데 그 중 절반정도를 아래의 두 코드가 잡아먹고 있었습니다.

dress('random_tags',getRandomTagsView(getRandomTags($owner),$skin->randomTags),$view);
dress('rcttb_rep',getRecentTrackbacksView(getRecentTrackbacks($owner),$skin->recentTrackback),$view);

각기 랜덤 태그 출력과 트랙백 표시 코드로 보이는데요, 하는 일만 봤을때 그닥 비용이 들만한 부분이 아닐텐데 저 두 라인을 주석처리 하고 나니 블로그 로딩 속도가 두배는 빨라진 듯 합니다. (주석처리 했더니 로딩에 2초가 걸리던것이 1초로 줄었습니다. 뭐 1초라 해도 여전히 느린 속도입니다만..)

더 자세히 까보진 않았습니다만 아마 매우 비효율적으로 처리되고 있거나 혹은 응당 인덱스가 걸려있어야할 DB 에 인덱스가 빠져있다던가.. 뭐 그런 문제가 아닐까 싶습니다.

참고로 코드가 위와 같은 스타일로 작성되면 스킨에서 사용하지 않는 치환자의 경우에도 모두 처리가 일어나므로 매우 비효율 적일 것입니다. 아래와 같은 스타일로 고쳐 쓰시면 전체적인 수행 속도가 향상될걸로 기대 됩니다.

if( $pos = find_tag( $view, 'random_rags' ) ) dress( $pos, getRandomTagsView(getRandomTags($owner),$skin->randomTags),$view);

2

답글: 1.1 버전 속도문제

해당 부분은 다른 방법으로 예전에 수정되었습니다. smile 현재 1.1.1 대기본에 적용되어 있으므로 기다리시면 보실 수 있을거에요^^

말씀하신 부분도 확인후 추가하도록 하겠습니다.

"Everything looks different on the other side."

-Ian Malcomm, from Michael Crichton's 'The Jurassic Park'

3

답글: 1.1 버전 속도문제

Testors 작성:

최근 1.1.0.x 로 업글 이후에 블로그 로딩 속도가 굉장히 느려졌습니다.
주소 입력하고 나면 페이지 뜨는데 3~4초씩이나 걸리는게 좀 심하다 싶어서 오늘 프로파일링 해보았습니다.

제 블로그의 경우, 우선 PHP 코드 실행에만 2.x 초가 걸리더군요.
그런데 그 중 절반정도를 아래의 두 코드가 잡아먹고 있었습니다.

dress('random_tags',getRandomTagsView(getRandomTags($owner),$skin->randomTags),$view);
dress('rcttb_rep',getRecentTrackbacksView(getRecentTrackbacks($owner),$skin->recentTrackback),$view);

각기 랜덤 태그 출력과 트랙백 표시 코드로 보이는데요, 하는 일만 봤을때 그닥 비용이 들만한 부분이 아닐텐데 저 두 라인을 주석처리 하고 나니 블로그 로딩 속도가 두배는 빨라진 듯 합니다. (주석처리 했더니 로딩에 2초가 걸리던것이 1초로 줄었습니다. 뭐 1초라 해도 여전히 느린 속도입니다만..)

더 자세히 까보진 않았습니다만 아마 매우 비효율적으로 처리되고 있거나 혹은 응당 인덱스가 걸려있어야할 DB 에 인덱스가 빠져있다던가.. 뭐 그런 문제가 아닐까 싶습니다.

참고로 코드가 위와 같은 스타일로 작성되면 스킨에서 사용하지 않는 치환자의 경우에도 모두 처리가 일어나므로 매우 비효율 적일 것입니다. 아래와 같은 스타일로 고쳐 쓰시면 전체적인 수행 속도가 향상될걸로 기대 됩니다.

if( $pos = find_tag( $view, 'random_rags' ) ) dress( $pos, getRandomTagsView(getRandomTags($owner),$skin->randomTags),$view);

전 어떻게 프로파일링 하셨는지가 궁금하네요. 적절한 프로파일러가 있나요?

4

답글: 1.1 버전 속도문제

xdebug 써봤는데 괜찮더군요. 음... 겐도사마는 바보 프로그램이라고 하십니다만;

"Everything looks different on the other side."

-Ian Malcomm, from Michael Crichton's 'The Jurassic Park'

5

답글: 1.1 버전 속도문제

inureyes 작성:

xdebug 써봤는데 괜찮더군요. 음... 겐도사마는 바보 프로그램이라고 하십니다만;

어떤 면에서 바보 프로그램인지 궁금합니다. 그동안 프로파일링에 xdebug를 써왔는데 말이죠. wink