redis
redis缓存数据库
在了解redis之前先了解数据库的发展史
最先开始的是单机时代,那时的计算机还没普及,用户访问量不是很多,使用的大多数在一台计算机上有tomcat,mysql,等
随着数据量大,(使用B+树)机器内存放不下,访问量逐渐增加,开始了memcached+缓存(之前查询过的数据放在缓存里,再次有相同请求时从缓存中调用即可)+垂直拆分
而开始了这个模式之前也做了很多优化
最早是优化数据结构、索引和算法
文件缓存(io操作)
数据库是读写的操作,而缓存实际上是对数据的读的操作进行优化。为了保证对数据写也提高效率而后又存在了分库分表+水平拆分(多个服务器)+集群
MYSIAM 表锁 查询密码时会把整个用户表都锁起来,导致其他进程进不来
IODB 行锁
关系型数据库的数据量多存在一些比较大的文件时就出现了菲关系型数据库(NoSql)
NoSql:Not Only Sql 的特点:
数据之间无关联,方便扩展
大数据最高性能
数据类型的多样性