【问题标题】:how does windows azure platform scale for my app?Windows azure 平台如何为我的应用程序扩展?
【发布时间】:2010-05-17 16:09:36
【问题描述】:

只是一个关于 Azure 的问题。

是的,我大致了解 Azure 和云计算。我会这样说:

比如说,以正常方式,我构建了一个监听 TCP 端口的程序。我在服务器中运行此服务器程序。我还构建了一个客户端程序,它通过指定的端口连接到服务器。一旦连接了客户端,我的服务器程序将计算一些东西并返回给客户端。

上面是普通模型,或者说我程序的模型。

现在我想使用 Azure。我想用是因为我的客户太多了,比如说一天100万。我不想租用 1000 台服务器并维护它们。 (只是对客户数量的假设)

我查看了 Azure 定价计划。它谈到了 CPU,谈到了小型、中型、大型实例。

我不知道它们是什么意思。例如,在我上面假设的情况下,我需要多少个实例?或者最多我可以从 azure 获得超大(8 个小实例?)

Azure 如何为我的程序扩展?如果我选择小实例(我的服务器程序很小,只是计算一些数据并返回给客户端),Azure 会为我扩展吗?还是 Azure 只是给我一个虚拟服务器并让它过载?

请仅考虑 CPU,而不考虑存储或网络流量。

【问题讨论】:

    标签: windows azure scale platform


    【解决方案1】:

    您可以选择两件事:要运行的 VM 大小(小型、中型、大型)以及要运行的这些 VM 的数量。这意味着您可以选择一个小型 VM(单处理器)并运行它的 100 个“实例”(100 个 VM),或者您可以选择一个大型 VM(同一台服务器上的八个处理器)并运行它的 10 个实例(10 个 VM) .

    如今,Windows Azure 不会自动调整您的规模,因此您可以根据需要使用 Web 门户或服务管理 API 来增加实例数量。

    【讨论】:

      【解决方案2】:

      需要考虑的一个因素是您的应用是否可以利用多核环境(多线程、共享内存等)来提高其规模。如果可以的话,使用 5 个 2x 核心(即中型)VM 可能比 10 个 1x 核心(小型)VM 更好。在某些情况下,您可能会发现 2 个 4x 核心 VM 的性能优于 5 个 2core。

      如果您的应用不是并行/多核的,那么您可以只做一些“x”个小型 VM。无论如何,费用都是线性的 - 即 2 核 VM 是单核成本的两倍。

      其他因素包括暂存盘大小和 VM 中可用的内存。

      另一个建议 - 您可能想考虑利用 Azure 队列(即让客户端发布到队列,工作人员从那里拉出)。这将允许您透明地(对客户端)增加/减少工作人员而无需担心连接等。此外,如果处理步骤失败并使您的实例崩溃,则消息将持续存在并被其他人之一拾取。

      【讨论】:

        【解决方案3】:

        我建议您也监控、评估和完善您的 Azure 配置结果。

        有关“监视 Windows Azure 中的应用程序”(和性能),请参考 http://channel9.msdn.com/learn/courses/Azure/Deployment/DeployingApplicationsinWindowsAzure/Exercise-3-Monitoring-Applications-in-Windows-Azure/

        还有一篇不错的博客文章,标题为“可视化 Windows Azure 诊断数据”

        【讨论】:

          【解决方案4】:

          查看http://www.paraleap.com - 用于根据需求自动调整您拥有的实例数量的简单服务。

          【讨论】:

            猜你喜欢
            • 2011-02-16
            • 2010-11-23
            • 1970-01-01
            • 1970-01-01
            • 2017-05-24
            • 2021-11-28
            • 1970-01-01
            • 2015-05-22
            • 1970-01-01
            相关资源
            最近更新 更多