我正在使用django构建一个小型金融网络应用程序。该应用程序要求数据库具有完整的价格历史记录,无论是否有人正在使用该应用程序。这些价格可在线免费获取。
我目前正在处理的方法是同时运行一个单独的python脚本(在django之外),它下载价格数据并使用sqlite3模块将其记录在django数据库中。
我的部署计划是在AWS EC2实例上运行应用程序,更改db文件所在文件夹的权限,并单独运行下载脚本。
这是部署此类应用的好方法吗?有什么缺点? 有没有更好的方法来处理异步下载和部署? (PythonAnywhere?)
答案 0 :(得分:1)
您可以编写守护程序代码并按照this方法在从Internet上获取数据后立即将数据推送到数据库。由于您的守护程序将独立于Django运行,因此您还需要处理与数据同步相关的问题。一种可能的解决方案是在您的Django模型中使用DateTimeField
auto_now_add = True
,这将让您了解数据在数据库中输入的时间。希望这可以帮助您或其他寻找类似答案的人。