AWS上有免费层,我基本上可以免费获得一个微型EC2实例。。或者接近..我确信设置弹性ips负载平衡器等是额外的。
我是否可以有效地为一个小api运行postgres DB。大约每秒插入50次+读取50次。。。比如说最多每分钟大约6000次操作。
我似乎在网上找不到任何东西——这让我觉得这可能是一个愚蠢的想法。
这不是一个"悬而未决的问题"——它只是:在运行我的postgres DB的EC2实例上期望可用性能是否可能且现实。
确定数据库是否能够处理特定工作负载的最佳方法是以该容量对其进行测试。启动数据库,模拟流量并监控其性能。请注意,每个应用程序使用数据库的方式都不同,因此没有人可以就特定大小的数据库是否能满足特定应用程序的需求提供"一般建议"。
如果要运行"生产"工作负载,请尽量避免使用突发性能实例(T2、T3(,因为除非选择"无限制"选项,否则它们在繁重的工作负载下可能会达到极限。T2/T3适用于突发性工作负载,但不适用于持续性工作负载。
EC2与RDS的m5.xlarge
比较:
- 亚马逊EC2:
19.2c/hr
(4.61美元/天( - 亚马逊RDS:
35.6c/hr
(8.54美元/天(
对于额外的价格,亚马逊RDS提供了一个完全管理的数据库、自动备份、CloudWatch指标等。这可能比你每天花费4美元的时间价值高得多。
或者,如果您可以修改应用程序以使用NoSQL而不是SQL,则可以使用Amazon DynamoDB,其中您提到的容量将花费4c/小时(1美元/天(,外加请求和存储成本。
不要在数据库上花费太多——它可以为你所做的一切提供动力。相反,当非生产系统不被使用时(例如周末和晚上(,可以通过关闭它们来省钱。这将有望为您带来足够的节省,让您能够负担得起一个功能适当的数据库。