NoSQL概述(上)

一、单机MySQL的美好年代

在90年代,一个网站的访问量一般都不大,用单个数据库完全可以轻松应付。
在这里插入图片描述
APP——>DAO层——>Mysql数据库

上述架构数据存储的瓶颈:
1、数据量的总大小,一个机器放不下;
2、数据的索引(B+ Tree)一个机器的内存放不下;
3、访问量(读写混合)一个实例不能承受。

目前自己做的项目,访问量基本没有,也是用的这种架构;

二、Memcached(缓存)+MySQL+垂直拆分

后来,随着访问量的上升,几乎大部分使用MYSQL架构的网站在数据库上都开始出现了性能问题,web程序不再仅仅专注在功能上,同时也在追求性能。程序员们开始大量的使用缓存技术来缓解数据库的压力,优化数据库的结构和索引。开始比较流行的是通过文件缓存来缓解数据库压力,但是当访问量继续增大时,多台web机器通过文件缓存不能共享,大量的小文件缓存也带来了比较高的压力。Memcached缓存就成为了一个非常时尚的技术产品。

在这里插入图片描述
对数据库而言,伤害比较大的是频繁的查询;
可在DAO层和数据库之间加入一层缓存,把经常查到的数据放到缓存中,缓解数据库的压力。

垂直拆分:把不同部分的数据放到不同的数据库,减轻数据库访问压力。

三、Mysql主从读写分离

由于数据库的写入压力增加,Memcached只能缓解数据库的读取压力。读写集中在一个数据库上让数据库不堪重负,大部分网站开始使用主从复制技术来达到读写分离,以提高读写性能和读库的可拓展性。Mysql的master-slave模式成为这个时候的网站标配了。

在这里插入图片描述
写的操作都放在Master主库中,读的操作都放在Slave从库中,减轻数据库的压力。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值