在服务器上存储大数据

时间:2014-08-07 00:27:45

标签: django

我正在使用Django编写一个进行用户学习的网站。对于每个用户,我需要在RAM中加载大量数据,并允许在该特定用户的网站上访问该数据。当用户离开网站时,可以丢弃该数据。当下一个用户访问网站时,一组新数据将被加载到RAM中。对于每个用户,数据大小相同,但值不同。任何时候最多四个用户将访问该网站。数据最大可达100MB。

实现此目的的最佳方法是什么?我能想到的唯一解决方案是将数据存储为会话变量,但我想知道这是否涉及任何内存复制,如果数据很大,这可能会很慢?

1 个答案:

答案 0 :(得分:1)

你不应该通过Django分配RAM。如果要运行繁重的进程,请异步运行它们 - 您可能需要Celery: https://pypi.python.org/pypi/django-celery http://www.celeryproject.org/

首先在Django命令中执行“基于用户输入的机器学习计算”。然后你可以查看Celery什么时候运行它......

工作流程将是: - 用户在表单中输入一些数据 - 用户提交它:将数据保存在数据库中 - 之后使用该记录

自动运行命令