Django过滤器是否会增加每个用户的ram消耗:Python

Django过滤器是否会增加每个用户的ram消耗:Python,python,django,postgresql,filter,ram,Python,Django,Postgresql,Filter,Ram,我不知道我还能在哪里问这个问题,所以在这里问。我想知道,如果我在一个使用多个db表的页面上施加多个Django过滤器,那么无论用户何时访问该页面,都会影响ram消耗,因为在此之前,只会反射用户过滤的数据。我正在一个基于ubuntu的虚拟机上使用django和postgresql,如果有任何文档有助于理解ram利用率,请建议。django过滤器和查询集是惰性的。它的实际含义是,在您对数据库进行评估之前,您不会实际访问数据库。引用官员- 在内部,可以构造、过滤、切片查询集,并通常在不实际访问数据库的

我不知道我还能在哪里问这个问题,所以在这里问。我想知道,如果我在一个使用多个db表的页面上施加多个Django过滤器,那么无论用户何时访问该页面,都会影响ram消耗,因为在此之前,只会反射用户过滤的数据。我正在一个基于ubuntu的虚拟机上使用django和postgresql,如果有任何文档有助于理解ram利用率,请建议。

django过滤器和查询集是惰性的。它的实际含义是,在您对数据库进行评估之前,您不会实际访问数据库。引用官员-


在内部,可以构造、过滤、切片查询集,并通常在不实际访问数据库的情况下传递查询集。在对queryset进行评估之前,实际上不会发生任何数据库活动


因此,RAM中占用的唯一空间实际上是包含queryset和程序的列表。当计算查询并从数据库中提取数据时,即(取决于提取的数据量)内存被填满时。另外,最好也看看Django过滤器和查询集是否懒惰。它的实际含义是,在您对数据库进行评估之前,您不会实际访问数据库。引用官员-


在内部,可以构造、过滤、切片查询集,并通常在不实际访问数据库的情况下传递查询集。在对queryset进行评估之前,实际上不会发生任何数据库活动


因此,RAM中占用的唯一空间实际上是包含queryset和程序的列表。当计算查询并从数据库中提取数据时,即(取决于提取的数据量)内存被填满时。另外,最好也看看

RAM在您的过滤器被使用之前不会被使用,因为过滤器是惰性的。是循环从这些过滤器中获取数据。另外,你不应该担心VM的RAM中有过滤器,其他东西正在占用你的数据这意味着像这样的过滤器
detail.objects.filter(category_type='Jeans').filter(fit_gte='Tight')[:12]
用于创建额外的类别页面不会使用任何RAM。我说得对吗?在内部,可以构造一个查询集,过滤、切片并通常在不实际访问数据库的情况下进行传递。在对queryset进行评估之前,实际上不会发生任何数据库活动。这是django Doc提供的,过滤不会影响RAM消耗谢谢。。。。请加上它作为答案,这样我可以标记它。它可能会对像我这样的人有所帮助。RAM不会被使用,直到你的过滤器被使用,因为过滤器是懒惰的。是循环从这些过滤器中获取数据。另外,你不应该担心VM的RAM中有过滤器,其他东西正在占用你的数据这意味着像这样的过滤器
detail.objects.filter(category_type='Jeans').filter(fit_gte='Tight')[:12]
用于创建额外的类别页面不会使用任何RAM。我说得对吗?在内部,可以构造一个查询集,过滤、切片并通常在不实际访问数据库的情况下进行传递。在对queryset进行评估之前,实际上不会发生任何数据库活动。这是django Doc提供的,过滤不会影响RAM消耗谢谢。。。。请加上它作为答案,这样我可以标记它。这可能对我这样的人有所帮助。