Q&A

http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=77274&sca=%BC%B3%C4%A1%2F%BC%B3%C1%A4

 

이글을 보니 

 

XE처럼 file cache 가 기본인 경우에는 2초로 두더라도, 지연 문제가 생길 수 있겠네요. 
ex) xe/files/cache/template_compiled/1c43b1d5d8ee3b952577bd1b3eef4937.compiled.php 

이 경우 시우님 말씀대로 0으로 설정하거나, blacklist/memcached 적용을 해야겠군요.

 

 

위와 같은 문제가 발생할 수 있다고 해서요. 현재 60초로 해두었는데, 어떤 문제가 발생할까요..? (코드 바로 확인되는 것 말고..)

댓글 9

  • 그냥 해당 설정이.. 서버에서 코드를 바꿔도 바뀐코드를 인식하지 않고 무시하고 설정한 값(초)단위로 기다렷다가 바꿔줄 뿐입니다.
    60초 설정하면,
    설정한 다음부터 30초 이후 코드를 바꾸게 되면 해당 모든 사항이 30초 이후 설정이 완료된다고 보시면될듯..

    그래서 빠르게 하는 효과인데.. 이건 HTML파일에서도 문제가 잇을꺼에요. 그래서 개발하는 사람들에게는 0으로 쓰는데 권장은 60이 좋다고들 합니다.
  • @람보
    예를 들어 글을 새로 등록했는데 등록이 안된다거나,

    파일을 올렸는데 안올라간다거나,

    삭제했는데 삭제가 안된다거나 하는 문제가 발생하나요?
  • @하늘희
    건. php에서 오류가 나지 않는이상, 혹은 오류난 php코드가 실제로 opcache를 이기고 바뀌기전이지 않는이상..(머라는겨)
    opcahce해당 설정단위에서 오류나는건 없을꺼에요.

    php코드가 오류가 생겨서 코드를 바꾸고 나서 적용기간을 거쳐야 하는거뿐인거죠.
  • @람보
    아하 감사합니다.
  • XE 최신 버전에서는 opcache 사용중 파일 캐시의 내용이 변경되면

    해당 파일만 자동으로 갱신해 주는 기능이 들어 있습니다.

    https://github.com/xpressengine/xe-core/blob/master/classes/cache/CacheFile.class.php#L81

     

    그러나 기본 설정 화면 같은 곳에서는 opcache를 갱신해 주지 않고,

    모듈 설정 등이 캐싱되는 파일도 마찬가지이기 때문에

    이런 설정을 바꾸면 1분 후에야 적용되겠지요.

     

    사실 0, 1, 2, 3초 정도까지는 성능 차이가 있지만 그 이상 늘리는 것은 별로 효과가 없어요.

    웹 파일을 NFS로 마운트해놓고 쓰는 등 특이한 경우만 아니면...

  • @기진곰
    그럼 2초 정도가 적당한 건가요 ?!+_+
  • @하늘희
    성능과 편의가 가장 균형을 잘 이루는 지점이 2초입니다. 2초가 기본값인 이유가 다 있죠 ㅎㅎ
  • @기진곰
    네 그렇군요! 감사합니다 :)
  • @기진곰
    그래도 난 0을 쓰겟다..(?)