[QuerySet]쿼리셋 수정을 통한 웹서비스 성능 개선
들어가기웹서비스에 있어서 데이터페이스는 성능에 많은 영향을 미친다. 절대적으로 SQL 갯수를 줄이고, 각 SQL의 성능 및 처리속도 최적화가 필요하다.리스트 조회 페이지를 만들때 Post.objects.all() 과 같은 queryset을 자주 활용했었다. 이번에 인스타그램st 프로젝트를 진행하며 데이터 조회시 몇개의 SQL 쿼리가 발생할까? 중복은 없을까? 궁금해졌다. django-debug-toolbar 를 활용해서 페이지 로딩시 발생하는 쿼리를 확인해보았는데, 결과가 충격적이었다. 고작 글 9개를 조회하고 화면에 출력하는데, 28개의 쿼리문이 발생하고 그 중에 26개는 중복이었다.(부들부들..)이를 해결하기 위해서 다음과 같은 메소드를 활용하였다.select_related()ForeignKey, O..
2018.02.23