Django 请求数据是否在请求-应答周期结束时被垃圾收集?

Django 请求数据是否在请求-应答周期结束时被垃圾收集?,django,python-3.x,django-rest-framework,garbage-collection,gunicorn,Django,Python 3.x,Django Rest Framework,Garbage Collection,Gunicorn,我正在通过gunicorn作为wsgi应用程序运行djangoAPI(drf) API正在处理需要从系统内存(ram)中清除的敏感信息(密码和其他机密)。我的理解是,API请求中的所有数据都将使用正常的引用计数机制进行垃圾收集:一旦处理了请求并且gunicorn收到了回复,就不再存在对请求的引用,因此将完全进行垃圾收集 这同样适用于在请求处理期间创建的任何对象:在处理请求后,将删除对该对象的所有引用 打破这一假设的唯一方法是,如果我做了以下任何一项: 将对请求的引用存储在全局对象中 创建对请求对

我正在通过
gunicorn
作为
wsgi
应用程序运行
django
API(
drf

API正在处理需要从系统内存(
ram
)中清除的敏感信息(密码和其他机密)。我的理解是,API请求中的所有数据都将使用正常的引用计数机制进行垃圾收集:一旦处理了请求并且gunicorn收到了回复,就不再存在对请求的引用,因此将完全进行垃圾收集

这同样适用于在请求处理期间创建的任何对象:在处理请求后,将删除对该对象的所有引用

打破这一假设的唯一方法是,如果我做了以下任何一项:

  • 将对请求的引用存储在全局对象中
  • 创建对请求对象的循环引用
  • 2
    的情况下,
    gc
    模块将能够检测到引用并将其删除。我甚至可以使用
    gc.collect()

    第一个问题可以通过小心不要将引用存储在全局对象中来避免

    我有两个问题:

  • 关于内存中的数据持久性,还有其他事情需要注意吗
  • 如何在
    gunicorn
    中的请求处理结束时强制运行垃圾收集(
    gc.collect()
  • 重复类型的问题。重复类型的问题。