【问题标题】:How to right size cloud instance?如何正确调整云实例的大小?
【发布时间】:2020-01-21 19:05:39
【问题描述】:

我有一个 Spring MVC Web 应用程序,我想将它部署在云中。它可以是 AWS、Azure、Google 云。我必须找出需要多少 RAM 和硬盘。目前我已经在我的本地机器上部署了应用程序。现在我转到 localhost:8080 并单击服务器状态按钮。在 OS 标题下它告诉我:

物理内存:3989.36 MB 可用内存:2188.51 MB 总页数 文件:7976.92 MB 空闲页面文件:5233.52 MB 内存负载:45

在 JVM 标头下它告诉我:

可用内存:32.96 MB 总内存:64.00 MB 最大内存:998.00 MB

如何从这些数据中推断出 RAM 和硬盘的大小?必须有一些经验公式,例如 OS 的内存 + 因子 *jvm_size & 我假设 jvm 大小 = 应用程序的内存大小。在部署到云端时,我们不会部署所有这些示例应用程序。

【问题讨论】:

    标签: amazon-web-services azure tomcat memory heap-memory


    【解决方案1】:

    来自您本地计算机的这些统计信息处于空闲状态并且没有任何流量,因此它肯定会占用和消耗更少的资源。

    您无法根据本地机器内存统计信息来决定云机器的大小,但这几乎没有什么帮助,就像消耗应用程序的最小资源一样。

    因此,如果您预计会有大量用户,那么更好的方法是执行一些负载测试,然后在负载测试的基础上进行相应的设计。

    简短的方法是阅读已部署应用程序的要求或推荐系统。

    内存

    至少 256 MB RAM,建议使用 512 MB 或更多。每个用户 会话需要大约 5 MB 内存。

    硬盘空间

    大约 100 MB 的可用存储空间用于安装的产品(这确实 不包括 WebLogic Server 或 Apache Tomcat 存储空间)。参考 有关数据库建议的数据库安装说明 存储分配。

    您可以进一步查看herehere

    因此,如果您想进行分段或开发设计,那么您可以选择这两个 AWS 实例之一。

    t2.micro

    1VCPU 1GB 内存

    t2.small

    1vCPU 2GB 内存

    https://aws.amazon.com/ec2/instance-types/

    【讨论】:

    • “每个用户会话 5 MB”,非常有用的信息。数据库不会安装在同一个 EC2 中——所以我们不需要考虑数据库存储空间。Tomcat 需要多少存储空间? Tomcat 附带的 service.bat 文件告诉我最大 256MB。
    • 提到了存储,为了数据库更好地使用RDS
    猜你喜欢
    • 1970-01-01
    • 2020-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多