我们希望在弹性beanstalk上为我们的rails应用程序运行development
和production
个实例。
production
的特征是:
数据库要求(在eb实例上没有):
development
目前在eb实例上使用sqlite development
和production
我们的development
目前是t1.micro
,显然即使是开发也不会削减它(登录有时需要60秒)。
我将进行实验,但如果有人为每个环境选择合适的实例类型以及哪些标准/约束对于轨道(即计算单元)最有意义,那么我们将不胜感激。
答案 0 :(得分:1)
我的2美分 - 靠在内存的CPU上。 CPU始终有帮助;至少你的应用程序将编译资产并在部署时更快地加载到内存中。我建议从生产中的2x c1.medium开始(在2个不同的AZ中用于基本冗余)和1x m1.small开发。
不要过度思考机器的大小,而是将权利置于低位,即:将静态资产放在CDN上并实现片段缓存(存储在每个环境的专用redis或memcached节点中)。
如果您之前从未这样做过,New Relic Pro可能会让您在确定应用中的瓶颈方面有一个很好的开端。
然后开始加载测试!
另外,请不要在生产和开发之间共享您的RDS实例。通过为每个环境提供自己的数据库来隔离这两种环境。