开发者社区> xaubllxwtvaqiu> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

缓存|学习笔记

简介: 快速学习缓存
+关注继续查看

开发者学堂课程【Java面试疑难点串讲2:缓存】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/25


缓存

1、缓存问题

对于整个电脑而言,它有一个自己的固定状态,如果要读取数据。

流程:将硬盘上的内容直接加载到内存里面,然后再通过内存进行读取。因为硬盘上所保存的都是物理上的二进制数据。

如果你的电脑只是你一个人在使用,那么没有任何的问题。这个时候,你会发现当人一多的时候,你的电脑就会变得跟蜗牛跑步一样。非常的慢。

如果只是你一个人在使用,那么慢一点感觉不到,可是如果换到了公网上,一堆的用户要进行数据读取的时候,现在的事情就出现了,所有的操作如果通过数据库查询得到(物理磁盘上),那么速度就会非常的慢,假如说一个查询需要60ms的时间,这个时间在人一多会呈指数倍增长。

所以有些人就开始想如何可以减少这种操作所带来的延迟时间的增长呢?

于是有人提出:我们不使用普通的硬盘全部换固态硬盘(速度可以提升,但是价格也提升)。固态硬盘不禁用。

如果我不是土豪,无法缩短内存与磁盘间的读取的延迟,那么这个时候怎么办?

那么唯一的解决方案是不读取硬盘上的内容。速度就会非常的快了。可是这种做法就有三种实现模式:CMS)直接使用内存作为缓存,也就是说将所读取出来的数据保存在内存里面(数据的失效问题)、使用缓存数据库(RediesMemcachedNoSQL数据库)。

而对于内存缓存而言,有两种常用的组件:oscache(是在页面上使用,例如:需要在某一个JSP页面之中缓存一个对象的时候使用)、ehcache(是在一些开发框架之中出现,例如:HibernateMybatisShiro)。

:缓存的本质=减少物理磁盘的读取时间(延迟取消了),直接读内存,还需要进行一些合理的内存管理。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
缓存|学习笔记
快速学习缓存
20 0
缓存|学习笔记
快速学习缓存
13 0
缓存|学习笔记
快速学习缓存
18 0
前端缓存|学习笔记
快速学习前端缓存
44 0
云上解锁Web3.0 阿里云XR平台助力彼真科技呈现沉浸式演唱会
云XR平台完成了算力调度、渲染、推流、编码和用户管理等工作,彼真科技专注在内容制作与实现上。
85615 0
集群缓存 | 学习笔记
快速学习集群缓存,集群负载均衡的机制和实际使用时的一些配置问题
76 0
学习笔记
成员变量本类使用的用私有的,类目可以用属性。属性简化操作(属性里面的一些默认操作)controller只是做管理View的操作用。至于之间的切换其实是View之间的切换(和模态试图不一样)controller初始化有两种方法,一个是init 一个是用nib文件初始化的。
529 0
7737
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载