그누보드 캐싱 기능이 있을까요?

그누보드 캐싱 기능이 있을까요?

QA

그누보드 캐싱 기능이 있을까요?

답변 4

본문

그누보드6와 그누보드5는 캐싱을 지원하는지 궁금합니다

Laravel, Symphony, Wordpress, Codeigniter등 대표적인 PHP 프레임워크는 캐싱을 지원하는데요

그누보드도 지원하는지 알고싶습니다

이 질문에 댓글 쓰기 :

답변 4

그누보드6이 자체적으로 지원하는 캐시는 없습니다. fastapi 의 서드파티로 사용할 수 있지만 그누보드6이 자체적으로 최적화된 캐시 디자인이 없기 때문에 다소 제한적이거나 효율성 문제는 예상되네요. 모듈만 설치한다고 알아서 척척 되는 것도 아니고요.

 

그누보드5는 일부분에 캐시가 적용되어있으나 구현에 문제가있어 캐시효과를 제대로 활용할 수 없거나 전혀 효과를 볼 수 없도록 잘못 만들어져있습니다. 다수의 코드를 제대로 고쳐야만 사용할 수 있습니다.

잘못 구현된 캐시처리를 위한 코드를 고친다면 전혀 동작하지 않던 코드가 제대로 동작될 때 사이드이펙트가 발생할 수도 있습니다. 아주 오랫동안 잘못 구현되어있었기 때문에 전혀 관리되지 못한 코드가 동작되어버리는 셈이죠. 캐시가 제때 갱신되지 못하는 등의 영향이 있을 수 있습니다.

 

잘못된 코드를 고친다해도 설정에서 켜고 끌 수 있는게 아니라 플러그인을 개발하여 구현해야 합니다.  자료실에 memcached 연동 플러그인은 있습니다만...

 

 

캐시 관련 코드가 있지만 없는거나 별반 다르지 않은 상황이라고 보시면 됩니다. 

현재는 사용할 수 있는 캐시는 최신게시물 위젯의 캐시 정도만 활용할 수 있습니다.

안녕하세요. 그누보드6 캐싱 기능은 아래와 같이 사용되고 있습니다.

 

1. Fastapi 의존성 캐싱

- 참고 : Using the same dependency multiple times

 

2. cachetools 서드파티 라이브러리를 활용. (플러그인 및 일부 함수에 적용한 상태)


# lib/common.py
 
@cached(TTLCache(maxsize=10, ttl=300))
def get_populars(limit: int = 10, day: int = 3):
    """인기검색어 조회
    ...

 

3. FileCache() 클래스 (render_latest_posts() 함수에서 사용)

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 222
© SIRSOFT
현재 페이지 제일 처음으로