포럼

Context 객체를 초기화하기 바로 직전까지 메모리 사용량이 4MB 정도 잡아먹고 있습니다.


물론 서버 플랫폼에 따라 다르게 나오겠지만 그만큼 메모리가 많이 새어나가고 있다는 소리입니다.


이에 여러가지 방안을 제시해 봅니다.

  • include, require 줄이기
    • ./config/config.inc.php 파일만 보아도 include 하는 파일이 많다는 것을 느낄 수 있었습니다.
      DB class와 모듈 class를 불러들이는 것까지 포함한다면 적어도 수십개의 파일을 불러들이는 셈이 됩니다.
      PHP5를 기반으로 최적화한다면 조금이나마 나아질 수 있기에 지금으로서는 생략합니다.
  • 전역변수($GLOBALS) 사용 줄이기
    • 전역변수 : PHP 스크립트 어느곳에서든지 access 할 수 있는 변수.
    • PHP 스크립트 어느곳에서든지 access 할 수 있다는 편리함 때문에 XE에서 자주 사용되고 있습니다.
      하지만 전역변수는 지역변수보다 느리고 메모리 소모가 크기 때문에 다른 방법을 강구해야 합니다.
  • 모듈 instance 생성 시 언어 불러들이지 않도록 하기
    • 불편하더라도 언어를 직접 불러들이게 된다면 불필요한 메모리 사용량을 줄일 수 있습니다.
      module.xml에 action별(혹은 view/model/controller 등의 instance type)로 선언을 하여 언어를 불러들이도록 합니다.
      단, 기존 모듈에 대한 호환성을 확보하기 위해 별도로 선언하지 않았다면 항상 불러들이도록 합니다.
  • 템플릿 엔진 최적화
    • $lang = XE에서 사용되는 언어가 담긴 변수.
      Context::set('변수이름', '값') = 템플릿 파일에서 사용할 변수를 선언하는 함수.
    • XE core 1.5에서 최적화가 이루어졌다고는 하나 여전히 메모리 누수는 심각합니다.
      새로운 방안을 마련해야 합니다.

글쓴이 제목 최종 글
HolyJohn XE 트위터는 누가 관리하나요? [2] 2012.01.26 by 슝트
엠™ 1.5.0.8 에서 댓글 입력시 "내용에 값을 입력해주세요" 이거 나오시는분들 없나요? [5] 2012.01.26 by 엠™
푸하라 궁금한 부분 index.php 파일에 ?> 가 없는데 상관 없는건가요???? [1] 2020.03.14 by BNU
황비 이런 결과를 어떻게 이해해야 할까요? [37] file 2012.01.26 by 송동우
natura XEWIKI 도와주세요! (지식나누기 어렵지 않아요 :D) [8] 2012.01.26 by natura
SMaker 어떻게하면 정상적인 활동을 가장한 스팸글을 걸러낼 수 있을까요? [5] 2012.01.25 by ezi
銀童 커미터 선정 공지를 보았습니다. [2] 2012.01.25 by misol
라미아스튜디오 1.5.1에서 포인트 선물모듈이 작동하지 않는거같네요...  
ezi XE 관리팀에게 메일을 보냈는데.. [1] 2012.01.25 by snows96
銀童 XE 에 대한 개선사항을 이야기 하고 서로 토론하는건 좋지만 [3] 2012.01.25 by 이지데브
당근11 xe1.4xx 버전용 모듈이나 애드온등은 이제 더 이상 추가 업뎃이 안되나요? [2] 2012.01.25 by 이지데브
SMaker 외국 템플릿을 XE 레이아웃으로 포팅하는 중입니다 :) [7] 2012.01.25 by snows96
인스크랩 XE '쇼케이스'에 등록할 웹사이트를 추천 부탁드립니다. [5] 2012.01.24 by aryan
인스크랩 쇼케이스 홈페이지자랑 카테고리 8~9페이지 오류? [3] 2012.01.24 by 인스크랩
老姜君 회원 포인트는 도대체 어디에 저장되는 걸까요? [5] 2020.03.14 by HolyJohn
nexonx xe에 이런 기능이 있었으면 좋겠습니다.. ; [4] 2012.01.24 by HolyJohn
Youth XE의 속도 문제는 매우 긴급하게 해결해야될 문제입니다. [12] 2012.01.24 by HolyJohn
SMaker XE의 메모리 누수가 심각합니다. [7] 2012.01.23 by misol
카르마 뒤늦게 1.5 버전을 테스트하다가... [5] 2012.01.23 by 宋芭江
HolyJohn innodb를 쓰고 싶지만... [3] 2012.01.23 by 미루아