我的网站上有一个管理面板。我希望进行一次初始数据加载,并在我的网页上创建了一个按钮,该按钮生成一个 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 一次插入许多记录。我有大约 500 万条记录,而 Django 始终以 400 万条记录死亡。它是一个相对较小的服务器,只有 1gig 内存。我可以做些什么来让 Django 垃圾收集或释放资源吗?