我的网站上有一个管理面板。我希望做一次初始数据加载,并在我的网页上创建了一个按钮,生成一个http请求,最终进入以下功能:
def load_model(dbf_file, model, create_fn):
db = dbf_reader.read_database(dbf_file)
data = []
for record in db:
data.append(create_fn(record))
if len(data) == 300:
model.objects.bulk_create(data)
data = []
该函数加载.DBF文件,然后一次读取一条记录。它将它们批处理为一个数组,然后使用bulk_create一次插入多个记录。我有大约5百万的记录,Django一直死在4mil。它是一个相对较小的服务器,只有1gig的内存。有什么办法可以让Django垃圾收集或释放资源吗?