免费云的折腾
从前些年开始,我陆陆续续做了几个小APP,比如Random Meals,以方便我和我的朋友平时使用。有些APP比较简单,连数据库都不需要;有些APP则需要在后台不间断的运行进行一些数据的查询和存储,但并不会需要太多的CPU资源。在这些APP的需求下,上云是很适合的,而且可以保证APP24小时不间断相应和运行。
既然要上云,对于我这种个人用户而言,而且这些APP完全不收费,云成本的控制就成了一个大问题。目前,我的网站广告收入很低,每年得花将近50美元订阅GitHub Pro托管项目和网站,还有一些文件的存储和访问是通过Amazon S3产生的,这就另外每年需要大概几十美元的费用,入不敷出。一开始我用的是Google Cloud,寻思着按照我对这些APP的成本估算,第一年Google送的300美元肯定用不完,之后每年的费用可能在100美元以内就差不多了,应该可以接受。

然而实际用下来不知道怎么回事,Google Cloud扣钱扣的挺厉害的。免费送的300美元用了5个月就用完了,APP再跑了几个月又扣了200美元,感觉有点吃不消。然而在今年年初,偶然发现了Heroku这个云,居然还有Free Tier。他们家的Free Tier感觉是很全的,既能免费托管好多个资源占用不大的APP,还能享受一些容量有限的Relational Database。不仅如此,Heroku免费用户也支持Docker部署,长时间没有人访问的APP会自动休眠,不会占用Free Tier里的免费时长,他甚至还有免费的Redis服务。这么看下来,Heroku的Free Tier简直是为我量身打造的,于是我也就在社交平台上追捧Heroku,也花了很多时间把所有的APP迁移到了Heroku部署。
但也就在我使用Heroku大概半年以后,Heroku宣布从2022年11月起永久取消Free Tier。我就很郁闷,开始寻找下个可以免费托管我的APP的云。这时,我惊奇的发现,很多大公司的云服务都推出了Free Tier。Google Cloud甚至在我转去Heroku期间,也推出了Free Tier。我需要能用Docker免费部署,少量的免费Relational Database,大致看了看这些Free Tier,Google Cloud Free Tier能用来部署一些简单的不需要数据库的APP,IBM Cloud Free Tier既能用Docker部署也有少量的免费Relational Database。接下来就得再花点时间把APP从Heroku迁移到这些云上,穷人就得折腾。