缓存数据库Redis
NoSQL 入门与概述 为什么用 NoSQL? 什么是单机 MySQL? 在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。 Memcached(缓存)+MySQL+垂直拆分 MySQL 主从读写分离 由于数据库的写入压力增加,Memcached只能缓解数据库的读取压力。读写集中在一个数据库上让数据库不堪重负,大部分网站开始使用主从复制技术来达到读写分离,以提高读写性能和读库的可扩展性。MySQL 的 Master-Slave 模式成为这个时候的网站标配了。 分表分库+水平拆分+MySQL集群 在 Memcached 的高速缓存,MySQL 的主从复制,读写分离的基础之上,这时 MySQL 主库的写压力开始出现瓶颈,而数据量的持续猛增,由于 MyISAM 使用表锁,在高并发下会出现严重的锁问题,大量的高并发 MySQL 应用开始使用 InnoDB 引擎代替MyISAM。 同时,开始流行使用分表分库来缓解写压力和数据增长的扩展问题。这个时候,分表分库成了一个热门技术,是面试的热门问题也是业界讨论的热门技术问题。也就在这个时候,MySQL 推出了还不太稳定的表分区,这也给技术实力一般的公司带来了希望。虽然 MySQL 推出了 MySQL Cluster 集群,但性能也不能很好满足互联网的要求,只是在高可靠性上提供了非常大的保证。 MySQL 的扩展问题 MySQL