我有一个EC2实例(免费微型),我正在主持一个嵌入式Flash游戏的网站。 Flash游戏将数据发送到具有5个表的RDS(免费微型)MySQL数据库。该游戏用于教育目的,我们正在跟踪玩家所采取的游戏行为,以便我们可以发布学术论文 - 因此,重要的是我们不要丢失太多数据。在过去的几周里,我们已经有大约20,000人注册在游戏发布时玩游戏。这比预期的要多。我担心的是,所有20K在相同的48小时内都会发挥作用并使一切都崩溃。游戏是10.7 MB,需要加载到浏览器中,然后它会在每个会话中向每个表发送5-10行。因此,我们可以在两天内查看每张桌子1-2百万个条目。我将使用loader.io来加载测试,但这是我第一次加载测试。我想得到关于EC2和RDS实例最好购买的意见,或者我应该加载测试,直到找到有效的方法?
有人能引导我朝着正确的方向前进吗?亚马逊文档对我没有多大帮助。
答案 0 :(得分:1)
这个问题没有简单的答案。它取决于您的应用程序的性能。每个应用程序都是不同的,取决于它的开发和它必须做什么,它将需要不同的CPU周期来满足单个请求。
因此,考虑到这一点,您可以做的最好的事情是尝试复制高负载方案并查看应用程序的执行情况。然后,您可以使用此信息来决定应用程序应使用的实例类型。您还可以识别应用程序中的瓶颈,这些瓶颈也可以进一步提高性能。
答案 1 :(得分:0)
我要关注的是内存和IOPS。
<强>内存强>
R3实例针对内存密集型应用程序进行了优化,并且在Amazon EC2实例类型中具有每GiB RAM最低的成本。
IOPS :(每秒输入/输出操作数)
如果您希望每秒保证读取或写入,我强烈建议您使用预配置IOPS。预设的IOPS存储是一种存储选项,可提供快速,可预测且一致的吞吐量性能。您可以根据需要在创建实例时指定IOPS速率。
最佳部分: 如果您意识到自己已经过度使用或未充分利用内存,则可以在不停机的情况下升级或降级实例(假设您正在运行MAZ)。