你可以在Django中存储一个常量全局对象吗?

问题描述 投票:0回答:1

我正在做一个使用地理空间数据的小网页。我使用GeoPandas和Shapely在Python中进行了初步分析,并试图以此为基础构建一个网页。问题是,当使用Django时,我似乎找不到一种方法来保持形状文件作为一个常量对象存储。每次请求对shape文件进行操作时,我都需要从源头加载数据。这需要6秒钟的时间,而标准的数据框架深度复制需要6秒钟。df.copy() 会花费几分之一秒的时间。有什么方法可以让我在Django中存储一个数据框架,可以在不重读shapefile的情况下被视图访问和深度复制?

python django geopandas shapely
1个回答
0
投票

由于Django的特性,全局变量并不是很好用。我用两种不同的方法解决了这个问题。第一种是直接使用django sessions。这样一来,你想全局存储的对象现在只需要在你的网站上每个会话加载一次。第二个也是更有效的选择是使用缓存服务器,无论是Redis还是memcached。这将允许你在所有的会话中非常快速地存储和获取你的对象,并且最能提高性能。

© www.soinside.com 2019 - 2024. All rights reserved.