首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

绿谷秘笈之:让人烦恼的应用缓存

在计算机(原指PC电脑,现在已经演变为有处理器,也就是CPU的计算终端)系统中,用于减少CPU访问内存所需时间的组件,在逻辑上,缓存的作用仅次于CPU寄存器,它的容量远远小于内存,但它的运行速度却接近CPU。

这可是绿谷君好不容易从维基百科里扒来的哦,绝对权威的解释。

这个解释有点专业了,距离吃瓜生活有点远。

表捉急嘛,让绿谷君先说一说日常使用缓存的场景。

“缓存”没上场!

上网浏览网页(或者使用基于网页技术的应用)时,每一次点击页面,都会直接从服务器端直接请求所需要的页面或内容,虽然网络已经越来越快,但对于计算机系统,这种时间和资源的浪费仍然是无法容忍的。通过大量的数据分析发现:网页的结构、素材、甚至是内容在一段时间内并没有改变,或者改变很小,但每次访问都会传输之前传输过的重复内容,这种重复的低效的消耗,计算机系统和网络真的难以无视它的存在!

“缓存”隆重出场!

既然网页的结构、素材、甚至是内容在一段时间内没有改变或改变很小,那就没必要给用户传输重复的东西。

对于重复的东西,可以让用户自己存储下来,想看的时候看自己的就行啦。

当然,服务器端的网页的结构、素材、内容有发生改变的时候,通过“刷新”机制刷新一下存着的网页就好啦。

访问网页比没有缓存的时候真的感觉飞起了呢!

看来缓存真的很重要呢。

有“缓存”,不再需要反复传送海量的数据,也不再需要更多的服务器了。网络不再拥挤,服务器的压力也不山大了,关键是用户的体验绝对好了,“秒开XX,一键XX,......”,伟大的缓存,我们由衷的赞美你......

好吧好吧,本想再滔滔不绝的赞美一会儿呢,那等会儿再吃瓜。

就像某位吃瓜说的:有好的一面必然也有不好的一面。

下面绿谷君要批评一下“缓存”同学了,缓存确实存在以下几个缺点:

缓存会占用用户设备的大量空间

因为缓存太好用了,所以趋势就是尽量的把网页的结构、素材、甚至短期不变的内容尽量向用户一侧堆叠,有新内容时也会增加堆叠(一般很少删除原有的不变缓存内容),造成用户设备的空间被缓存越占越大。

缓存会拖累用户设备的运行速度

有了缓存会很快,但那是指网页服务器和互联网传输速度这一段落。用户设备本身也是一种小型计算机系统,随着缓存越来越多、越来越大,查找速度会下降,拖累用户设备的CPU和内存运行速度,造成手机性能的下降。

缓存的“顽固”机制会阻隔最新数据的获取

缓存本身不顽固,只不过目前的应用软件设计的趋向是:尽可能降低服务器端的资源消耗。所以,尽可能将所需内容缓存在用户端。智能手机应用更是如此。因为,移动网络的可靠性仍无法与有线网络相等,所以,设计上会尽可能的采用可靠的数据获取和更新方式,手机中缓存也是尽可能保留和堆叠。可以看看手机的应用管理,APP可能本身并不大,但是APP的缓存数据可能会很大。

当缓存机制并不那么合理或效率不高的时候,用户设备可能出现只读取缓存而不刷新,从而出现自己的设备上永远是旧的页面内容,错过了很多新的信息。

那么通过频繁刷新不就可以解决啦?

是,通过频繁刷新可能可以解决,但是也会有问题:

还记得某年春节买火车票的情景吗?通过抢票软件刷票,频繁的将火车票服务器刷死的悲剧吗?

另外,缓存机制设计或用户设备或应用软件本身的问题,刷新永远无法触发刷新的真正执行,用户设备上依然是旧的内容。

还有一种情况,目前特别是智能手机上APP之间的互相交互越来越频密,为了不被各种APP的账号密码搞晕,一般都会采用使用手机号或微信号授权登录,因为授权登录太方便了,除了不用再注册和记住各种账号密码,还能打通很多东西,比如电子钱包、消息通知、信息分享等等。

很多应用APP对于授权登录也采用了缓存,将授权的登录信息缓存在APP自身的缓存中,下一次打开应用APP,直接调用缓存的登录信息登录,通过定期同步授权方数据的方式来更新授权缓存信息。

但有时恰恰事与愿违。因为毕竟开发团队是不同的,登录和缓存机制会有差异,即便是同步机制也会有差异,因此也会出现明明登录是授过权的,但为何登录后提示需要登录或注册账号?这里就是缓存更新或授权信息没更新的问题了,也或许是缓存很顽固,打开的应用APP无法调取授权信息,所以就干脆当作新用户来对待。

好怕怕!那咋办呢?

首先,绿谷君请各位看官把心放回肚子里。对缓存,既不要太喜欢也不要太害怕,没啥大不了的。

了解“缓存”和它的兄弟“机制”之后,使用正确或合理的方法是可以解决缓存问题的。

开始放送秘笈!

宝典一用户设备缓存清理

省心方式:使用各种工具定期清理缓存,人人可用,不需要专业知识和技能

电脑

可以用电脑管家类工具扫描和清理缓存文件

安卓手机

可以使用手机管家类工具扫描和清理缓存文件;

苹果手机

苹果系统很封闭,清理工具无法有效清理;即便可以,但如果没有一定的操作系统知识,清理后将会造成APP文件系统损坏。因此,对于苹果手机,比较稳妥的清理缓存方式是使用APP自带的“设置”功能里的清理缓存功能来清理。

专业方式:此方式要具备一定的专业玩机技能,如自认为没有,建议千万不要尝试

电脑

使用专业的电脑系统检测工具,扫描操作系统(或软件)的缓存文件,之后,按需要删除缓存类文件

安卓手机

对手机进行“ROOT”操作(获取手机系统超级权限),使用手机管家类工具在超级权限下检测手机文件系统,之后,按需要删除缓存类文件

苹果手机

使用专业工具获取手机的“ROOT”权限,检测手机文件缓存,之后,按需删除缓存类文件

简单终极方式:人人可用,不需要专业知识和技能

电脑

卸载需要清理的软件,用电脑管家类工具清理缓存,之后重装软件;

手机

卸载需要清理缓存的APP,之后重装APP。

粗暴终极方式:人人可用,不需要专业知识和技能

电脑

人肉方式(或Ghost备份恢复方式)重装操作系统;

手机

恢复出厂设置或初始化所有设置,之后重装APP。

宝典二授权缓存处理

省心方式:可以采用宝典一的省心方式

专业方式:此方式要具备一定的专业玩机技能,如自认为没有,建议千万不要尝试

这里只对手机来讲

应用APP的不同版本缓存机制和同步机制是有差异的,可能某个版本不会出现授权缓存问题,但您使用的新版本却出现问题。好办,安装没有问题的版本就可以。

但是手机的软件应用市场里,没有问题的版本已经没有了,此时,就需要玩机攻略技能了。

安卓手机

相对简单,在网上搜到需要的版本,通过手机浏览器直接下载(或电脑下载后,通过数据线拷贝到手机内存中),之后安装即可。

苹果手机

需要点耐心,网上有成熟的攻略,如:《IPhone安装XX老版本方法》,需要什么APP的就搜索什么APP的攻略,例如“威锋网”,“PP助手”等论坛均有各种方法大全。

终极简单方式:人人可用,不需要专业知识和技能

电脑

卸载需要清理缓存的软件,然后重装;

手机

卸载需要清理缓存的应用APP,然后重装。

用上面的套路,已经可以解决大部分的缓存问题了。

还有很多非常特例的情况,因为情况各异且属于偶发现象,解决的方式也千差万别,所以就不在这里逐一讨论和呈现。

绿谷君将有针对性的为您提供解决建议,同时也能够分享给有需要的朋友。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180109G06VXW00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券