저는 작은 프로젝트를 수행 중이며 최종 사용자에게 여러 캐싱 옵션을 제공하려고합니다. 장고와 함께 memcached를 데이터베이스 나 파일 기반 캐싱으로 바꾸는 것이 매우 단순하다고 생각했습니다. 내 memcached 구현 아무 문제없이 챔피언처럼 작동합니다. 내 페이지에 타임 스탬프를 넣었고, 제대로 작동하려면 캐싱을 원하는 위치에 이전 타임 스탬프가 일관되게 표시됩니다. 그러나 데이터베이스 캐싱으로 전환하면 데이터베이스에 항목이 없으며 캐싱이 깔끔하게 작동하지 않습니다. (존재 필요한 manage.py를 실행 한 후Django 데이터베이스 캐싱
CACHE_BACKEND = 'db://cache_table'
표 :
CACHE_BACKEND = 'memcached://localhost:11211'
사람 : 내가 필요하다면 모든 문서에 표시되는 내용에서
은 백엔드를 변경하는 것입니다 createcachetable) 행을 볼 수 있습니다. 현재 테스트 중이므로 sqlite3을 사용하고 있습니다. 그러나 말할 수있는 한 중요하지 않습니다. 테이블이 완전히 비어 있고 언제든지 쓰여지지 않았 음을 확인할 수 있습니다. 또한 이전에 언급했듯이 타임 스탬프는 '잘못'되어 더 나은 증거가 될 수 있습니다.
의견이 있으십니까? 나는 sjiteite, Django 1.0.2, Python 2.6을 현재 Apache를 통해 Ubuntu Jaunty 컴퓨터에서 사용하고 있습니다. 나는 단순한 무언가에 광택을 붙이고 있다고 확신한다. 제공된 모든 도움에 감사드립니다.
오타되었습니다. 죄송합니다. 그것을 정정했다 – f4nt
@lemonad 일단 내가 뭔가를 업데이 트하고 같은 API를 업데이 트 데이터가 캐시 된 데이터베이스에서 제공 받고있어, 어떻게이 문제를 처리해야합니까? –
@ PiyushS.Wanare이 질문은 2009 년 이후이므로 새로운 질문을하는 것이 좋습니다. 그러나 일반적으로 캐시 무효화 체계를 제공해야합니다. 즉, 무언가를 업데이트하면 캐시에서 값을 수동으로 삭제해야합니다. 그렇지 않으면 이전 값이 여전히 제공됩니다. – lemonad