1、资源消耗的大户在于 MySQL,影响整体性能的因素也在于 MySQL。对于创业型团队来说,不要过度依赖 MySQL,不要将高并发业务逻辑都用 MySQL 来处理。在 MySQL 前加个 Memcached 做 SQL 查询缓存,跟 MySQL 的 Query Cache 区别不大,治标不治本,命中率不高,还降低了实时性。现在的移动应用,交互性比较强,实时性要求非常高,Web 时代缓存几分钟的老方法,已经不能适合移动互联网时代的需求。因此,MySQL 只适合存储一些并发查询量不大的核心数据,或作为数据的备份,只写入不查询。我遇到过很多创业团队,用户飞速增长时,最后都是被 MySQL 数据库的性能瓶颈蹩了脚,最后不得不减缓产品功能开发的脚步,来做性能调优,失去了与竞争者、模仿者、山寨大王腾讯的竞争优势。创业团队靠什么和大公司竞争,靠得就是灵活与速度,跑赢大公司。
2、在不依赖 MySQL 的条件下,那么,最低配的关系型数据库服务(比如阿里云的最低配内存 240M、磁盘IOPS 150、最大连接数 60,70元/月),就能适合自己的需求了,不然,勉强满足一般业务配置的关系型数据库服务的费用,就得 700~3000 元/月了。
3、如果购买最低配的关系型数据库服务,还不如省掉 70元/月的费用,在自己 1GB 以上内存的 VPS 上,自己搭建一个 MySQL 数据库,磁盘IOPS、最大连接数、存储空间还不受限制。自己做好 MySQL 的主主、主从同步备份,定时dump备份就可以了。需要注意的是,很多VPS默认没有开启sawp,使用 MySQL 请一定记得开启。下面提供一个 MySQL 5.6 版本适合在 1GB 内存 VPS 上的 my.cnf 配置文件。
下载文件
点击这里下载文件
4、如果说 VPS 云服务是必选项的话,关系型数据库服务则是可选项。
五、结构化存储 NoSQL 数据库
1、既然不依赖 MySQL 数据库,那么,对于高并发访问,就需要依赖结构化存储 NoSQL 数据库了。虽然一些云计算服务商,也提供了结构化存储服务,但是,不推荐使用。因为他们使用的都是私有协议,你无法在他们的服务质量、稳定性变差了,价格变贵了,或出现别的更好服务商时,快捷地迁移数据。数据迁移、代码修改的成本太高,还要收到一些服务商规定的单个键值对数据大小不能超过多少、数据导出单个文件大小不能超过多少,使用了,就等于被绑架了。当你准备迁移时,发现不能停服务、数据量太大导入导出速度慢、数据一致性问题受影响,你会发现,早知如此,何必当初。