
질문과 답변
2026.08.16 10:02
메인페이지는 어떻게 구성하는게 좋을까요?
미묘한 차이지만 현재 리빌더의 메인페이지는 로딩에 약간의 흔들림이 있습니다.
메인페이지의 로딩관련 어떤 방법이 좋을까요?
(1) 직접 코딩을 한다.
(2)
layout.render.php 파일등 최적화가 진행될 가능이 있으므로
기존 리빌더 방식을 사용한다.
최신글, 위젯에 직접 redis 캐시를 적용해도 메인페이지의 로딩이 그누보드5 순정에 비해 느낌으로 최신글, 위젯 출력에 많은 차이가 나는 상황이라..
현재 리빌더는 원할한 기능 확장을 위한 것인지 모르겠지만,
AI에 물어보니
(1) 과도한 PHP DOM 파싱 부하 (DOMDocument / DOMXPath)
코드를 보면
DOMDocument를 생성하고 HTML을 로드(loadHTML)한 뒤,DOMXPath로 노드를 찾고, 자식을 붙이고, 다시 문자열로 변환(saveHTML)하는 무거운 작업을 수행하고 있습니다.특히
rb_replace_element_inner_html함수 내부에서는 중첩된 레이아웃 개수만큼 매번 새로운DOMDocument객체를 또 생성하여 파싱하고 있습니다.이로 인해 PHP 서버의 CPU 연산량이 급증하여 서버가 HTML을 완성해 브라우저로 보내는 시간(TTFB) 자체가 길어지게 됩니다. 브라우저는 페이지의 일부분(또는 기본 레이아웃 텍스트)을 먼저 받고, 서버가 무거운 DOM 조작을 끝내고 나머지 위젯 HTML을 밀어낼 때까지 대기하게 되므로 체감 딜레이가 발생합니다.
(2) 내부 스크립트 동적 인클루드 (rb_capture_layout_render_map)
include $capture_script를 통해 레이아웃 렌더링 파일을 매번 동적으로 불러와 실행하는 구조 역시 페이지를 구성하는 과정에서 I/O 및 파싱 오버헤드를 가중시킵니다.
- 이전글2.2.6.2 모듈 추가 및 수정이 안됩니다.2026.08.16
- 다음글베이직 5종 폴더 없어졌나요2026.08.16
댓글목록

