Redis等缓存数据库为什么访问会比较快?
2019-07-21 06:52
585 查看
原文链接:https://www.geek-share.com/detail/2707989020.html
首先,我们知道,mysql是持久化存储,存放在磁盘里面,检索的话,会涉及到一定的IO,为了解决这个瓶颈,于是出现了缓存,比如现在用的最多的 memcached(简称mc)。
首先,用户访问mc,如果未命中,就去访问mysql,之后像内存和硬盘一样,把数据复制到mc一部分redis和mc都是缓存,并且都是驻留在内存中运行的,这大大提升了高数据量web访问的访问速度。
然而mc只是提供了简单的数据结构,比如 string存储;redis却提供了大量的数据结构,比如string、list、set、hashset、sorted set这些,这使得用户方便了好多,毕竟封装了一层实用的功能,同时
实现了同样的效果,当然用redis而慢慢舍弃mc。 内存和硬盘的关系,硬盘放置主体数据用于持久化存储,而内存则是当前运行的那部分数据,CPU访问内存而不是磁盘,这大大提升了运行的速度,
当然这是基于程序的局部化访问原理。 推理到redis+mysql,它是内存+磁盘关系的一个映射,mysql放在磁盘,redis放在内存,这样的话,web应用每次只访问redis,如果没有找到的数据,才去访问Mysql。
然而redis+mysql和内存+磁盘的用法最好是不同的。
转载于:https://www.cnblogs.com/xiohao/p/6971854.html
相关文章推荐
- Redis等缓存数据库为什么访问会比较快?
- 根据从redis缓存的数据查询出来,在从数据库中取出所有的数据,俩个数据进行比较,去掉重复,剩下库中新插入的数据,取出新数据,然后把redis中的缓存数据清空把从数据库中查出来的所有数据放到redis缓存中
- Spring-Boot 集成Redis实现查询缓存提高查询效率减轻数据库访问压力(涉及key的添加和删除)
- JavaEE 使用 Redis 数据库进行内容缓存和高访问负载
- 为什么要引入数据库缓存,如redis?
- 详解JavaEE 使用 Redis 数据库进行内容缓存和高访问负载
- 为什么 FleaPHP 使用 Table Data Gateway 代替 Active Record 来提供数据库访问服务
- Vista攻略二:为什么在Vista中某些网站的访问速度比较慢
- 五种vc++数据库访问技术的比较
- 为什么mysql设置了密码之后,本地还可以直接访问,不需要输入密码就可以登录数据库了?
- Windows上使用C#访问ubuntu上的redis数据库
- ADO.NET访问数据-(2) DataSet本地缓存与数据库的交互过程,以及应用
- IT 缓存框架:足迹第二十三步ehcache、memcache、redis数据库的使用(什么是大项目常用的缓存处理方案)
- 为什么要使用redis数据库?
- 分布式缓存Redis之与Memcached的比较
- 构建高性能数据库缓存之redis主从复制
- Redis简介以及和其他缓存数据库的区别
- Redis简介以及和其他缓存数据库的区别
- 为什么 FleaPHP 使用 Table Data Gateway 代替 Active Record 来提供数据库访问服务
- 构建高性能数据库缓存之redis主从复制