【问题标题】:Load Balancing Java Application | Ec2 Instance负载平衡 Java 应用程序 | Ec2 实例
【发布时间】:2013-10-25 20:12:24
【问题描述】:

我们有一个托管在 m.large ec2 服务器上的 java 应用程序,将来需要进行大量计算,准确地说,预计每天有 1000 万次计算,每个单元计算需要大约 100 毫秒,计算是在 java 代码处进行多次处理,然后转储到 db 的类型,不像 Write Once,Read Many。平衡负载的最佳方法是什么?我们一直在考虑的选项是在负载增加时通过脚本实例化 ec2 服务器,但在实施之前,我们希望得到专家的可靠建议。请提供任何建议。

【问题讨论】:

    标签: java amazon-ec2 load load-balancing rds


    【解决方案1】:

    这可能不是您的正确答案,但绝对值得考虑。您应该为您的应用程序定义指标和阈值。

    随着负载的增加,通过脚本实例化 ec2 服务器

    在上述语句中,您需要定义“load”是什么意思?负载应该超过什么阈值才能说负载“增加了

    一旦您掌握了这些信息,请检查您是否可以使用 AWS cloudwatch 监控这些指标和阈值。如果是,那么您可以创建一个 autscaling 组,其中 autscaling 将在 cloudwatch 警报告知“负载已增加”时立即启动一个新实例。

    如果您发现 cloudwatch 不支持您的指标,请编写您自己的自定义指标并让 cloudwatch 对其进行监控。单击 here 获取自定义 cloudwatch 指标文档。

    获得自定义指标后,再次集成自动扩展和 cloudwatch 警报,以便在负载增加时管理新 EC2 实例的创建。

    简而言之,探索 AWS cloudwatch 警报和 AWS 自动缩放。

    整个过程假定您确实有一种完全自动化的方式来创建 EC2 实例以及您的软件堆栈。您可以使用应用程序堆栈创建预烘焙的 AMI,也可以使用 Opscode Chef 等工具即时安装应用程序堆栈。

    【讨论】:

    • 负载意味着计算导致接近 100% 的高峰值。
    【解决方案2】:

    使用平台即服务 (PaaS),而不是手动创建机器并扩展它们。这对于长期使用更灵活,并且需要更少的脚本。这里有一些 PaaS 建议:Looking for PaaS providers recommendations

    免责声明:我为 Gigaspaces 工作,Cloudify 开源 PaaS 堆栈的开发人员

    【讨论】:

      猜你喜欢
      • 2018-09-05
      • 1970-01-01
      • 2010-10-25
      • 2019-01-08
      • 1970-01-01
      • 1970-01-01
      • 2022-06-22
      • 2019-01-18
      • 2012-06-29
      相关资源
      最近更新 更多