【问题标题】:Should I deploy my web server with Django's default database?我应该使用 Django 的默认数据库部署我的 Web 服务器吗?
【发布时间】:2020-11-02 06:56:34
【问题描述】:

我是 Django 的菜鸟,我几乎处于部署 Web 服务器的阶段。

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

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

非常感谢,这个问题可能真的很基础,但我很困惑。

【问题讨论】:

    标签: python django database amazon-web-services sqlite


    【解决方案1】:

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

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

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

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

    【讨论】:

      猜你喜欢
      • 2021-03-04
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-28
      • 2016-03-18
      • 2011-04-01
      • 1970-01-01
      相关资源
      最近更新 更多