Q&A

라이믹스의 오브젝트 캐시 시스템에 대해 질문드립니다!

2021.07.17 15:57
900
0
CMS/프레임워크 Rhymix 2.0
개발 언어 PHP 8.1

this->setCache($cache_key, $array, 600);

 

기진곰님의 모듈 제작기내에 선언되어있는 setCache 함수를 통해 TTL을 600으로 설정하고 캐시를 생성할 경우

 

$cache = $this->getCache($cache_key); 를 통해 호출해야 올바른 캐시 호출인가요?

 

아니면 $cache = $this->getCache($cache_key, 600); 로 똑같이 600초를 지정해서 호출해야 할까요?!

 

이미 setCache에 600초를 설정해 두었으니, getCache에서는 600초로 ttl을 설정하지 않아도 자동으로 갱신된 캐시가 불러와지는 걸까요?

댓글 5

  • 2021.07.17 16:02 #1593958
    똑같이 적으세요. 기본값이 86400으로 고정되어있으니.. setCache 에서 직접 계속 캐시 자동으로 만들어주는지 아닌지 모르겠지만.. getCache 데이터가 600초 이후에는 만료를 확실히 시켜주는게 더 깔끔하죠.
  • 2021.07.17 16:05 #1593968
    감사합니다!
  • 2021.07.18 02:23 #1594052

    캐시를 유지하고 싶은 기간만큼 set에서 지정하세요.

    get에서 ttl을 별도로 지정하는 파라미터는 XE에서 어떤 알 수 없는 이유로 추가한 것인데

    라이믹스에서는 진작에 폐기된 기능이므로 아무 의미 없습니다.

     

    https://github.com/rhymix/rhymix/blob/master/classes/cache/CacheHandler.class.php#L66-L78

    여기 소스를 보시다시피, 두 번째 변수를 넘겨도 그냥 무시합니다.

  • 2021.07.18 02:26 #1594060
    아하 이해되었습니다 웬지 캐시 생성시 ttl을 지정해주는데 불러올때 또 지정해준다는게 이해가 잘 안가더라구요

    감사합니다!
  • 2021.07.18 06:44 #1594185
    거기까진 자세히 안보긴 했는데 굳이 저 시간을 get에서 관리하는건 왜그럴까 라는 생각 했습니다..ㅋㅋㅋ

    새벽에 코드 볼 상황이 안되어 못봤는데 ㅎㅎ 라이믹스 대충 보니까 굳이 저거 필요 없을 것 같다는 생각이 들긴 햇거든요.

    혹시 몰라서 갱신되도록 하는게 더 좋지 않을까 생각했습니다 ㅋㅋㅋ