在Django应用程序中将数据存储在内存中是一个好的做法吗?

2024-05-20 19:53:40 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个可重用的django应用程序,用于为jqueryui自动完成返回json结果。在

目前,我正在将获取结果的类/函数存储在字典中,每个类/函数都有一个唯一的键。在

当一个请求出现时,我从dict中选择相应的类/函数并返回输出。在

我的问题是,做上述操作是最佳实践,还是有其他一些技巧可以获得相同的结果。在

示例要点:https://gist.github.com/ajumell/5483685


Tags: django函数httpsgithubcomjson应用程序示例
3条回答

你好像在说一种记忆的形式。在

这是可以的,只要你不依赖字典中的结果。这是因为内存对于每个进程都是本地的,并且您不能保证后续请求由同一个进程处理。但是,如果您有一个生成结果的回退,这是一个非常好的优化。在

这是一个非常普遍的问题。它主要取决于代码的基础结构。定义类和模型的方式以及应用程序的动态性。在

其次,重要的是要考虑到运行应用程序的服务器的资源。您有多少可用内存,以及多少磁盘空间,这样您就可以考虑哪些对应用程序更有利。在

最后但并非最不重要的一点是,要考虑将所有这些资源放入内存需要多少操作。内存是不稳定的,所以如果你的应用程序重新启动,你将不得不再次实例化所有的类,这可能需要大量的工作。在

恢复,作为一种优化,是一个非常好的选择,以保持内存中经常被查询的对象(这就是缓存的全部内容),但您必须考虑到前面的所有内容。在

在字典中存储一系列函数并根据请求有条件地选择一个函数是一种完全可以接受的处理方法。在

如果你想要一个更具体的答案,这将是非常有助于张贴你的实际代码。其次,这可能更适合codereview.stackexchange在

相关问题 更多 >