【问题标题】:Do I have to choose a specific zone in AWS PHP API?我是否必须在 AWS PHP API 中选择特定区域?
【发布时间】:2012-09-17 20:55:49
【问题描述】:

要使用run_instance 运行实例,我必须指定一个展示位置,否则我会收到错误消息,指出 ami 不可用。
现在,每个区域都有多个区域(如US EastUS West 等)和多个区域(如us-east-1aus-east-1b 等)。

我是否必须将特定区域传递给 AWS,或者是否可以只传递一个区域(例如 us-east-1 可能)并让亚马逊选择该区域?
我想把这个决定留给亚马逊,因为我看不出区域之间有任何区别,而且在所有区域上平均分配实例会有点复杂。

【问题讨论】:

    标签: php amazon-ec2 amazon-web-services


    【解决方案1】:

    是的,您必须指定特定区域。

    您可以通过为自动缩放组指定启动配置来减轻一些痛苦,而不是严格使用单个实例。启动配置可以告诉系统在许多区域的每一个中运行 X 个实例。这使得在每个区域中获得所需的正确数量的实例变得容易,而不必为实际实例化每个实例而烦恼。此外,如果您只需要固定数量的实例,您实际上不需要担心“缩放”规则。

    这里有更多背景信息

    http://aws.amazon.com/autoscaling/

    【讨论】:

    • 感谢您的回答。自动缩放看起来像是集群服务器的正确解决方案。就我而言,这些机器实际上是独立的,因为它们是为没有高可用性的客户推出的,它们不会超载。所以,在这种情况下,我必须考虑一些算法来平均分配它们,对吧?我必须将它们分配到所有区域还是可以将它们放在一个区域中而让其他区域为空?
    • @wullxz 所以这些是单独的实例,而不是每个服务的多个实例?在这种情况下,除了在多个 AZ 中工作的额外努力之外,将您的实例放在多个 AZ 中真的没有任何收获。仅仅因为您位于特定的可用区并不意味着您位于数据中心的相应物理部分。您可以在跨数据中心的多个物理位置的同一个 AZ 中拥有所有实例。一旦您查看跨多个 AZ 的负载平衡流量以获得更好的扩展性和可用性,您可能希望使用多 AZ。
    • @wullxz 此外,如果这些服务器中的任何一个相互通信,您可以通过将所有服务器放在一个 AZ 中而不是让服务器跨 AZ 通信来节省带宽成本。
    • 好的,这让我的工作轻松多了 :) 感谢您的详细解答!
    【解决方案2】:

    嗯,是的,您必须指定特定区域。在你的情况下,我看到你需要解决两个问题: -您需要为可用性低的客户提供新实例,并将它们分布在不同的位置以提高性能-最好的解决方案是-您可以将负载均衡器放在所有实例(单个或多个可用区)上,然后在负载上连接云端平衡器。 Cloud front 基本上以内容分发的方式工作,并使您的应用程序在不同位置具有高可用性,从而提高了性能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-19
      • 1970-01-01
      • 2021-12-03
      • 1970-01-01
      相关资源
      最近更新 更多