YYCache缓存使用

作者: 拥抱月亮的大星星 | 来源:发表于2016-04-14 16:11 被阅读12837次

由于项目需要,很多地方都要使用缓存这个东西,首先我最先尝试的是FMDB这个轻量级的存储,SQL语句写的太爆炸,我意识到这样工作效率太过低下,接着开始转Coredata,的确,面向对象的的确上手舒服好多,but,项目中几乎大多数接口都要用,还面临参数被改的风险,由于前段后台同步做,尼玛简直Coredata也拯救不了

怎么办?

看到一个叫NSCache-->好屌,百度--》YYCache

拯救我于水深火热中

我的缓存策略有两种

没有用YYCache

1.先请求,请求到show并且存一份到Sqlite

2.下次请求前判断网络

3.有网 --》继续1

4.没有网络 -》加载缓存

使用YYCache之后

/**

*start

* 1.先加载缓存

* 2.判断有没有网络

* 3.如果没有网络则return

* 4.有网,则继续请求,然后刷新内容,刷新缓存

*end

*/这些我们在封装的请求方法里面写就OK

具体实现我还找到了这个别人封装好的东西,真的想研究,下载下来看看就知道了

https://github.com/321zhangyang/SPHttpWithYYCache

万分感谢上面Demo作者,解决了我一个心头隐患,thx

相关文章

网友评论

  • 清隐道人:demo看不懂,你网络监控的代码写哪了,你写死的?如果不刷新缓存这个设置是干嘛的,最好是写一个使用说明,不知道里面的逻辑是干嘛的。这个本来就是在别的框架上封装的,阅读性差,虽然有文字说明,但不懂其中逻辑。没网还请求数据吗,现在的demo是报错的,服务器的404,想测逻辑也测不了。
    清隐道人:或者写一个完整的demo也可以啊
  • unhangcorn:O(∩_∩)O谢谢你
  • 悲伤的盖茨比:你好,我重新运行APP,可以读到之前的缓存数据吗?为什么我读取不到啊, objectForKey返回nil
    a60590dc79c3:存在缓存区,你当然读不到
  • 愚人船ios:请问可以计算缓存大小吗?
  • 十一岁的加重:有技术的人啊
  • zenon:我现在逻辑是,只要缓存有数据,就加载。
    除非error,并且缓存没有,才显示错误。
    不知道这样的逻辑有问题吗?想听听楼主意见
    zenon:@拥抱月亮的大星星 呃,抱歉我没说全。我现在的逻辑是:
    1.请求成功->设置/更新缓存->使用缓存
    2.请求失败->检查缓存->使用缓存/错误提示

    拥抱月亮的大星星:@土土土土土土 你这样没考虑缓存过期问题
  • 幻想无极:请求里面的缓存名字需要根据不同的请求改变吧
  • 一抹相思泪成雨:看那个链接 你也没有处理啊???
    点亮橘子树:@Hoolink 可以细说么 :smirk:
    一抹相思泪成雨:@拥抱月亮的大星星 加下qq 1522144903 细聊下
    拥抱月亮的大星星:@Hoolink 我修改了下存储的key,根据特定的key来取你需要的数据,具体怎么用看你的需求啊
  • 4d1c9ed96d67:你好我想问下 yycache取数据, 是不是只能一下子把缓存的数据取出来,不太灵活 还有插入数据等问题。
    拥抱月亮的大星星:@YangSugar 我修改了下存储的key,根据特定的key来取你需要的数据,具体怎么用看你的需求啊
    4d1c9ed96d67:@拥抱月亮的大星星 那个demo我看了 没有处理 就是一下子取出来
    拥抱月亮的大星星:@YangSugar 看下最后那个链接

本文标题:YYCache缓存使用

本文链接:https://www.haomeiwen.com/subject/dsbglttx.html