我有一个在Heroku中托管的网站。这是一个电子商务网站,上载用户的设计(JPG,PNG,PSD文件或AI文件,PDF等),但这些存储在Amazon中,而不是heroku中。
现在我正试图降低成本,所以我正在检查资源,然后看到了:
如您所见,我有一个Heroku Postgress插件Standard 0
,每月费用为50美元。
我正试图降低Heroku Postgress插件的成本。
根据此Heroku Page,有$ 9的Postgres计划。
但是,它具有行限制,并且不提供存储容量。
这会如何影响我的应用?
如何更改此计划?
heroku pg:info
=== DATABASE_URL, HEROKU_POSTGRESQL_GOLD_URL
Plan: Standard 0
Status: Available
Data Size: 18.3 MB
Tables: 26
PG Version: 10.7
Connections: 8/120
Connection Pooling: Available
Credentials: 1
Fork/Follow: Available
Rollback: earliest from 2019-04-30 19:23 UTC
Created: 2019-03-05 16:08 UTC
Region: us
Data Encryption: In Use
Continuous Protection: On
Maintenance: not required
Maintenance window: Fridays 18:30 to 22:30 UTC
Add-on: postgresql-polished-46417
=== HEROKU_POSTGRESQL_BROWN_URL
Plan: Hobby-dev
Status: Available
Connections: 0/20
PG Version: 10.6
Created: 2019-02-14 17:19 UTC
Data Size: 7.6 MB
Tables: 0
Rows: 0/10000 (In compliance)
Fork/Follow: Unsupported
Rollback: Unsupported
Continuous Protection: Off
Add-on: postgresql-opaque-83191
结算:
在我的帐单帐户中,我看到3月和4月我要收取超过$ 50 USD的费用。
如何限制这个范围,比如说每月20美元? **我们只希望访问量达到100位!**
但是,根据此medium post,访问次数并不是我们要收取的费用指标。我刚刚提到了100次访问顶部,作为参考。
答案 0 :(得分:1)
免费计划的上限为1万行,更正,一旦达到该上限,插入操作将开始失败。去过那里。
这实际上与所写的一样。 1万行,无存储限制。您可以在其中包含一个文本列,其中包含巨大的json或文件,只要存储在行数限制之内,存储就没有关系。
仅当您必须将其升级到更大的计划时,您才会受到影响,比如说9 $可以为您提供100万行,因为这不是数据库的升级,而是迁移到新数据库的过程去表演。
因此,要进行迁移,您必须将您的应用置于维护模式,添加9 $数据库,使其“跟随”您的免费数据库,等待几分钟,因为9 $数据库会使用免费数据库数据进行自身更新,然后使9 $数据库停止在免费数据库之后,最后将您的应用切换到新的9 $数据库。
如果您使用的是DATABASE_URL环境变量,那么最后一步对于应用程序是透明的。只需分离免费数据库并附加9 $数据库,将您的应用退出维护模式即可。
如果您可以有一两个小时的停机时间,那么值得节省。您可以编写此迁移脚本,因为它仅使用heroku命令。
拥有免费和可靠的数据库的另一种简便方法是使用AWS。由于heroku在AWS内部,因此您只需要在与应用程序相同的区域中设置RDS并切换连接即可。然后,您将拥有一个免费的30gb数据库一年。