문제

데이터베이스에서 많은 데이터가 생성된다는 점에서 동적 인 웹 사이트가 있지만 데이터베이스의 내용은 거의 변하지 않습니다 (일주일에 약 1-3 회). 이러한 변경 사항은 수동 및 제어됩니다.

동적 웹 사이트의 오버 헤드를 갖는 대신 정적 페이지를 사용하는 것이 좋습니다. 최선의 해결책이 무엇인지 토론하고 있습니다.

컬/wget/스파이더

이것 의문 그것을 언급합니다. 내가 보는 단점은 다음과 같습니다.

  • 수동 정리 필요 (링크, 누락 된 이미지 등)
  • 정적 및 동적 페이지를 혼합 할 수 없습니다

대리

프록시를 사용하여 특정 며칠 동안 정적 페이지를 캐시 할 수 있습니다. 단점 :

  • 각 페이지의 캐시를 관리하기 어렵습니다
  • 각 수동 변경 후에 캐시를 지워야합니까?

프로그램을 사용하여 정적 페이지를 생성하십시오

현재 선택 : PERL 프로그램을 사용하여 동적 콘텐츠에서 정적 페이지를 생성합니다. 많은 HTML, 특히 페이지 구조를 하드 코드해야하기 때문에 이것은 잘 확정되지 않습니다.

다른 방법이 있습니까? 당신은 무엇을 선호합니까?

도움이 되었습니까?

해결책

만료 시간이 길어지면 Memcache Base Full-Page 캐시. 태그 확장 선택한 페이지 범위 만 무효화 할 수 있습니다.

다른 팁

당신이 단지 설정하는 대신 이런 식으로하고 싶은 특별한 이유 데이터베이스 캐싱 솔루션 쿼리가 실제로 데이터베이스에 도달하지 않아야합니까?

가능 여부는 사이트에있는 동적 데이터의 양과 서버에서 사용 가능한 메모리의 양에 따라 다르지만 걱정하는 문제는 없습니다.

정적 페이지를 생성하기 위해 스크립트를 사용하여 지금하고있는 것과 같은 방식으로 할 것입니다. 템플릿 시스템을 사용하여 매번 새로운 HTML을 쓰지 않아도됩니다.

가능한 빨리 사용자에게 변경된 데이터를 표시하는 것이 얼마나 중요한지 언급하지 않았습니다.

우리는 웹 사이트에 성공적으로 프록시 캐시를 사용하여 많은 히트를 얻는 동적 페이지를 처리했습니다. 고객이 업데이트 된 데이터를 얼마나 빨리 확인할 수 있는지에 따라 각 범주마다 다른 캐시 나이를 유지했습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top