a.objects.all() b.some_object.related_set() 2. 每一个查询都要理解它背后的 sql: a.objects.latest('time'), time 有索引吗? b.objects.all().order_by('name')[10000:5] 3. 永远要避免 subquery: a.book_ids = Book.objects.values_list('id',flat=True) b.user_books = UserBook.objects.filter(book__id__in=book_ids) 4. 系统变慢的时候,首先要想到 slow query: a.slow_query 在 percona mysql 版本里可以配置到 1 秒以下,默 认是 10 秒 b.有些 sql 是因为有一个巨慢的 sql 堵塞引起的,所以要合理分析