我应该使用 Django 的默认数据库部署 Web 服务器吗?

Adv*_*tan 1 python database sqlite django amazon-web-services

我是 Django 的新手,我几乎正处于部署 Web 服务器的阶段。

我只是对 Django 的数据库有一些疑问。目前我使用默认的 sqlite3 数据库来存储所有用户模型以及信息模型。我正在考虑使用 AWS 来部署我的网络服务器。

因此,当我到达那个阶段时,我应该继续使用 sqlite 还是应该切换到 AWS 的数据库或 Firebase 之类的数据库。如果我继续使用 sqlite,信息将存储在哪里以及如何存储?如果我切换到 PostgreSQL 之类的东西,信息将存储在哪里,它会安全/快速吗(即使我设法获得数千个用户)?

非常感谢,这个问题可能非常基本,但我非常困惑。

kar*_*mad 5

sqlite是一个平面文件数据库,它使用项目中公开的文件来保存数据,这在本地环境中没问题,但是部署时需要考虑服务器和数据库位于同一台机器上并使用同一磁盘。这意味着,如果您不小心删除了用于为应用程序提供服务的计算机及其磁盘空间,那么数据库本身将连同所有记录一起被删除。

另外,如果您尝试扩展服务器,您将面临问题,即每个服务器都有自己的数据库副本,同步所有这些文件将是一件非常令人头疼的事情。

如果您的数据不是那么重要,那么您可以继续使用sqlite,但是如果您期望高流量和复杂的数据库结构,那么我建议您考虑像 Mysql 这样的数据库引擎,或者也许在这里查找亚马逊提供的数据库: https:// /aws.amazon.com/products/databases/

对于 django,当使用不同的数据库(如 mysql、sqlite 或其他数据库)时,您需要更改适配器。 https://docs.djangoproject.com/en/3.0/ref/databases/