【发布时间】:2014-05-12 12:21:27
【问题描述】:
设置如下:
- ec2 微实例
- MySQL 5.6
- Redis 服务器
- Node.js(基于 express 的应用)
- Nginx 作为反向前端代理。
很慢。非常慢。我知道这是一个微型实例,你得到你所支付的(考虑到它是免费的)。
最后我什至使用了 MySQL 的交换文件,它太慢了以至于无法使用。我应该启动 2 个中型实例(1 个用于 db/redis,一个用于应用服务器)?将所有内容合二为一并将其升级为大型实例?
另外,我应该寻找什么?为 MySQL 提供更多 RAM,为应用服务器提供更多 CPU?任何输入都会非常有帮助(尤其是那些过去使用过类似设置的输入)。
【问题讨论】:
-
一个好的答案取决于您的应用程序的资源和使用情况。您已经为内存缓存设计了设置,但是,微型实例上的内存并不多。您可以停止实例并将其切换为小型实例。然后继续努力,直到获得所需的性能。
-
@datasage 所以在这种情况下,我可能(现在)应该把所有东西放在一起,而不是把它分成不同的实例?很公平。我应该把 MySQL 放在 EBS 上吗?
-
如果您运行的是微型实例,您的 Mysql 数据应该在 EBS 卷上。实例存储在微型实例上不可用。在实例之间拆分服务还有其他原因,但这取决于您当前的负载、正常运行时间要求和成本。
标签: node.js amazon-web-services amazon-ec2