현재 라이브이고 많은 쿼리를받는 장고 웹 애플리케이션이 있습니다. 성능을 최적화 할 수있는 방법을 찾고 있는데 개선 할 수있는 부분은 데이터베이스와 상호 작용하는 방법입니다.Django에서 정적 데이터베이스 테이블 캐싱
현재보기에서 특정보기에 대한 각 요청은 전체 데이터베이스 테이블을 팬더 데이터 프레임에로드합니다.이 프레임에 대해 쿼리가 수행됩니다. 이 표는 55,000 개가 넘는 텍스트 데이터 행으로 구성됩니다 (대부분 좌표).
불필요한 쿼리를 피하기 위해 데이터베이스를 메모리에 캐시하고 처음로드 할 때 캐시하도록 권장되었습니다. 이것은 사물의 DB 측면에서 약간의 오버 헤드를 제거합니다. 전에 장고의 이런 기능을 사용 해본 적이 없기 때문에 나는 조금 길다.
장고 manual에는 내가하고 싶은 것의 구체적인 구현이없는 것 같습니다. 전체 테이블을 메모리에 저장하거나 파일에 저장하는 것이 더 좋은 아이디어일까요?
나는이 질문이 너무 광범위하게 표시 될 것이라고 예측하지만 https://github.com/Suor/django-cacheops로 시작한 다음 정확히 무엇을 원하는지 신경 쓰면 Google을 제안 할 수 있습니다. – valignatev
[django cachalot] (https://github.com/BertrandBordage/django-cachalot)을 사용해 볼 수도 있습니다. 설치가 쉽고 원하는 작업을 정확하게 수행 할 수 있습니다. 첫 번째 요청을 메모리에 저장 한 다음 나중에 가져옵니다. – mislavcimpersak