【问题标题】:Using Amazon EC2 to host Asp.net application使用 Amazon EC2 托管 Asp.net 应用程序
【发布时间】:2010-11-09 01:38:32
【问题描述】:

我目前正在开发一个应用大量图像的应用程序,我希望将其托管在“云端”

这是一个 c# / asp.net 应用程序。

所以我正在考虑使用 Amazon S3 来存储图像。 这点没问题。

但是,我正在考虑使用 EC2 来托管应用程序。

应用程序使用 SQL 服务器(仅在相当基本的级别上) 我想知道如何设置我的托管解决方案。 是否建议:

  • 有 1 个小实例专用于 SQL 服务器(将使用 express 版本开始)

  • 有 1 个小实例专用于
    运行 IIS(并托管
    应用程序)指向 sql conn
    字符串到上面提到的 sql
    实例

  • 使用弹性块存储来存储 SQL 数据和 aspx 页面,已编译
    组装等……

还有其他想法吗??

【问题讨论】:

    标签: c# asp.net iis amazon-s3


    【解决方案1】:

    暂时将它们全部放在同一个实例上,不要过早地优化/扩展。您可能会发现只需升级到中等 CPU 实例(36c/hr 而不是 12c/hr)就足以让您运行数月而不会遇到任何扩展问题。

    将来,如果您的单服务器设置无法满足您的需求,您可以将您的数据库移动到一个单独的实例上,最初是一个小型 cpu,稍后升级到一个中型。

    值得注意的一点是,如果您无法从中等 cpu 升级到高 cpu 实例,因为 32 位操作系统映像无法在更大的实例上运行,而 64 位也无法在更大的实例上运行较小的实例。

    选择 32 位 Windows(因为 EC2 将其用于中小型实例),在较小的单个实例上运行,然后在需要时向上扩展。

    关于 EBS - 我建议创建一个大小合适的卷,让您在一段时间内继续运行,并配置 SQLServer 以将其数据存储在那里。

    您也可以将 ASP.NET 应用程序存储在 EBS 卷上,但实例的 10GB 操作系统驱动器可能没问题,我认为这里没有太大区别。

    我强烈建议您使用弹性 IP,而不是 EC2 在启动实例时分配给您的临时 IP。创建一个弹性 IP,更新您的 DNS 以指向它并将其与您的实例相关联。

    按照您的需要配置映像后,将其关闭,捆绑实例,然后为其注册一个新的 AMI(私下)。大约需要40分钟。这意味着如果您的实例发生了可怕的事情,您可以按照以下步骤在 15 分钟内恢复:

    1. 分离您的 EBS 卷
    2. 解除您的弹性 IP 的关联
    3. 终止有故障的实例
    4. 启动您的 AMI 实例
    5. 将您的 EBS 卷附加到新实例
    6. 将您的弹性 IP 与新实例相关联

    【讨论】:

    • 一个问题...如果我有一个带有 MS SQL 服务器的实例并且他们终止了该实例,我会丢失所有数据吗?
    猜你喜欢
    • 2011-11-16
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 2018-06-19
    • 2011-01-11
    • 1970-01-01
    相关资源
    最近更新 更多