使用redis作为缓存,数据还需要存入数据库中吗?
我的答案是:
redis只是缓存,不是数据库如mysql,所以redis中有的数据库,mysql中一定有。
用户请求先去请求redis,如果没有,再去数据库中去读取。
redis中缓存一些请求量比较大的数据(这些缓存数据,mysql中一定也是有的),没必要所有数据都缓存到redis中。
之所以从缓存中拿数据会快,是因为缓存的数据存在于内存中,不像mysql的数据是存在磁盘上的,即不用经过从磁盘加载到内存这个过程(这个过程是非常耗时和低效的),直接从内存获取数据。
当redis缓存崩溃的时候,那么不是海量的请求都去访问数据库了?数据库能抗住吗?
收下要分析,当成千亿个请求同时访问过来,数据库为什么会扛不住?
①超大量的并发,数据库扛不住。
举个例子就明白了。
10000万个plsql客户端,同时访问Oracle进行数据库查询、写入等操作,数据库肯定吃不消。
从这个角度来说,redis并不能帮什么忙。
②数据库存在低速设备上,每次访问数据库,都要经过io,即从磁盘调入内存的过程。这个才是使用redis等缓存机制的原因。
以上就是数据哪些放redis哪些放数据库的详细内容,更多请关注亿速云其它相关文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。