바뀜

둘러보기로 가기 검색하러 가기
잔글
==== 22~24번째 줄 ====
19~24번째 줄에서 드루팔의 철학이 느껴집니다. static cache를 사용함으로써 로그인한 사용자가 단순히 게시물을 읽을 때는 DB에 쿼리를 전송하지 않고 캐시에 저장된 값을 가져다가 사용합니다. 이렇게 함으로써 성능을 향상시킬 수 있습니다. 앞서 설명한 것 처럼 초기에 사용자가 게시물에 대한 직접적인 갱신 작업을 수행하지 않으면 기본적으로 $cache[$nid] == 0을 설정합니다.(일반 사용자일 경우에만 이 값으로 설정하는 것 같습니다. 관리자는 이 설정의 영향을 받지 않는 것 같습니다.) 따라서 초기에 작성한 글을 보기만 하고 30일이 지나지 않은 글들은 기본적으로 새로운 게시물로 보여준다는 것을 알 수 있습니다.
$timestamp는 게시물을 읽은 마지막 시각입니다. 만약 $timestamp > HISTORY_READ_LIMIT 조건이 성립한다면 30일 이전의 타임스탬프 값(HISTORY_READ_LIMIT) 보다 큰 $timestamp의 값을 가진 게시물은 'new' 상태로 표시합니다. 따라서 30일 이후에는 $cache[$nid] == 0 && $timestamp > HISTORY_READ_LIMIT 조건이 성립하지 않으므로 게시물의 상태를 더 이상 'new'로 표시하지 않습니다. 참고로 앞에서 설명한 history_cron 함수는 데이터베이스의 history 테이블에서 timestamp < HISTORY_READ_LIMIT인 투플을 삭제합니다

둘러보기 메뉴