目前我正在构建基于NodeJ的聊天应用程序 所以我考虑选择哪个是我们服务器的最佳实例类型? 因为AWS有很多选择:通用,计算优化,内存优化.... 你能不能给我建议:(
答案 0 :(得分:3)
您可以阅读此内容 - https://aws.amazon.com/blogs/aws/choosing-the-right-ec2-instance-type-for-your-application/
实际上,您选择的主机-AWS,MS Azure,Google Compute Engine等并不重要......
如果您希望尽可能多地从服务器和基础架构中获取,则需要解决当前的任务。
首先确定在最接近的3-6个月内您将获得多少活跃用户。 如果每秒活动用户(连接)少于1000k - 我认为你可以从最小的实例类型开始。您应该检查如何增加实例的CPU / RAM / HDD(或SSD)。 因此,当您获得更多用户时,您将有一个计划如何加速您的服务器。
当您收到越来越多的用户时,请密切关注您的服务器分析 - CPU / RAM / IO利用率。
如果您需要通过一些与安全限制相关的认证,还有其他问题......
答案 1 :(得分:1)
由于您不确定从哪里开始,我建议从 M 类别(M3或M4)开始生产通用EC2实例。您可以从较小的实例类型开始,例如m3.medium。
注意:如果它是一个流量较低的内部聊天应用程序,您甚至可以考虑 T 系列EC2实例。
这里的重要部分不是试图预测容量需求。相反,您可以从通用EC2实例开始,然后查看EC2实例的资源消耗,您可以进行适当的容量规划。由于您可以横向和纵向缩放实例,因此在选择EC2实例的缩放单位之前,还需要交易实例类型,同时考虑成本和及时的负载要求。
我正在遵循的方法之一如下
有关详细信息,请参阅Architecting for the Cloud: Best Practices白皮书。
答案 2 :(得分:0)
我建议从T2.micro Linux实例开始。观察CloudWatch中的CPU使用情况。一旦CPU使用率开始超过50%到75%,或者空闲内存变低,或者磁盘I / O饱和,切换到下一个更大的实例。
T2.micro Linux实例(大部分)是免费的。阅读细则。 T2.micro实例是burstable,这意味着您可以从一个小实例获得良好的性能。
除非您的聊天应用程序拥有庞大的客户/交易基础,否则您(可能)不会需要其他实例类型。