【问题标题】:Amazon EC2 file structure / web app with separate Python backend?具有单独 Python 后端的 Amazon EC2 文件结构/Web 应用程序?
【发布时间】:2014-09-07 06:27:39
【问题描述】:

我目前正在 EC2 上运行一个 t2.micro 实例。我有它的 html/web 界面,以及一个 MySQL 数据库。

该站点允许用户通过 PHP 脚本注册并将其存储在数据库中。

我希望有一个实际的 Python 应用程序来查询 MySQL 数据库并返回用户数据,然后在 Python 脚本中执行。

我找不到的是我是否将这个 Python 应用程序作为一个完全独立的实例托管,或者它是否可以存在于同一个实例的不同目录中。我最终只需要查询数据库,这让我觉得它必须存在于同一个实例上。

有人可以提供一些指导吗?

让我明确一点:这不是一个 Python 网络应用程序。除了对数据库进行查询之外,这个 Python 后端是完全独立的。

【问题讨论】:

    标签: python mysql amazon-ec2


    【解决方案1】:

    这两种方法都可以,但各有利弊。

    在同一台服务器上运行单独的 Python 应用:

    优点:

    • 设置对数据库的本地访问非常简单

    • 只需要为单个实例处理备份或制作快照等

    缺点:

    • 如果您将来需要更多内存、处理能力等,则更难扩展单个部分

    在单独的服务器上运行 Python 应用:

    优点:

    • 独立的部分意味着您可以根据各自的需要扩展和缩小每个部分所运行的硬件

    • 如果您使用所有微型实例,您可以获得更多资源来使用,而无需任何额外费用(假设您仍然满足所有其他“符合免费套餐条件”的条件)

      李>

    缺点:

    • 一般来说,更多片段 == 更多时间花在配置、管理任务等上。

    • 您必须打开数据库以进行非本地访问

      • 最简单:打开数据库以从任何地方访问(例如所有远程 IP 地址),并让 Python 应用程序通过互联网登录

      • 更安全、更复杂:使用elastic IP 设置 Python 应用服务器,打开数据库以仅从该地址访问

      • 更安全、更复杂:设置您自己的virtual private cloud (VPC),并仅允许从 VPC 内部连接到数据库。您必须为每台服务器配置公共访问权限,以应对您将拥有的任何公共流量,大概是端口 80 和/或 443。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-08
      • 1970-01-01
      • 1970-01-01
      • 2013-07-31
      • 1970-01-01
      • 2017-03-22
      • 2012-04-02
      相关资源
      最近更新 更多