中高级面试知识点:缓存

前言

几乎全部的项目都作了缓存,可是缓存作的怎么样,其实只有咱们本身知道。缓存作的好,没有网络也能流畅的使用;再多的数据请求都不会出现卡顿延迟等待好久的状况。数据库

程序中除了图片缓存(三级缓存),还有信息缓存。当用户没法联网时,app会默认显示缓存的数据。缓存

前言缓存方式

SQLite网络

下载完数据文件后,把文件的相关信息如url,路经,下载时间,过时时间等存放到数据库,把url做为惟一的标识。下次下载的时候根据url先从数据库中查询,若是查询到当前时间并未过时,就根据路径读取本地文件,从而实现缓存的效果。app

文件缓存使用File.lastModified()方法获得文件的最后修改时间,与当前时间判断是否过时,从而实现缓存效果。数据格式为JSON。url

缓存方式两点说明spa

一、不一样类型的文件的缓存时间不同。笼统的说,不变文件的缓存时间是永久,变化文件的缓存时间是最大忍受不变时间。说白点,图片文件内容是不变的,通常存在SD卡上直到被清理,咱们是能够永远读取缓存的。配置文件内容是可能更新的,须要设置一个可接受的缓存时间。图片

二、不一样环境下的缓存时间标准不同。无网络环境下,咱们只能读取缓存文件,为了应用有东西显示,没有什么过时之说了。it

WiFiast

网络环境下,缓存时间能够设置短一点,一是网速较快,而是流量不要钱。配置

相关文章
相关标签/搜索