相信大家对memcache都不陌生,在项目中也经常使用memcache作为缓存方案,那么在使用过程中有没有发现为什么memcahce有两个添加缓 存的方法:一个是add,一个是set,那么你知道这2个方法有什么不同吗?什么时候该使用add?什么时候该使用set呢?

对于这点以前自己也没有去深究,只知道要添加缓存的用set就可以了,好像大多数时候使用的都是set方法,而add好像很少去使用。前几天和一个朋友聊天提起过这个,今晚在这里就记录一下这2个方法之间的不同。

1、memcache::add 方法:add方法用于向memcache服务器添加一个要缓存的数据。

注意:如果memcache服务器中已经存在要存储的key,此时add方法调用失败。

2、memcache::set 方法:set方法用于设置一个指定key的缓存内容,set方法是add方法和replace方法的集合体。

注意:

1)、如果要设置的key不存在时,则set方法与add方法的效果一致;

2)、如果要设置的key已经存在时,则set方法与replace方法效果一样。

3、 mmecache::replace方法: replace方法用于替换一个指定key的缓存内容,如果key不存在则返回false

在使用参数上add和set方法一样,这里就不在过多讲解。

怎么样知道memcache add和set这两个方法的区别了吧,以后使用时可以要注意了。

转载于:https://www.cnblogs.com/jiaosq/p/5833308.html

memcache中的add和set方法区别相关推荐

  1. android add fragment,fragment中的add和replace方法的区别浅析

    使用 FragmentTransaction 的时候,它提供了这样两个方法,一个 add , 一个 replace ,对这两个方法的区别一直有点疑惑. 我觉得使用 add 的话,在按返回键应该是回退到 ...

  2. 无法解析 list 中的方法 iterator_Python-list中的append()和extend()方法区别

    一.append()和extend()方法都是用来添加数据到list末尾的,两者的区别: append()添加的时候会把添加的数据当成一个整体进行添加,允许添加任意类型的数据 extend()添加的时 ...

  3. JAVAAPI学习之Calendar类;Calendar类set()、add()、roll()方法区别

    JAVAAPI学习之Calendar类 http://blog.csdn.net/myjlvzlp/article/details/8065775(写的很好,清晰易懂) Calendar类set(). ...

  4. java 学习之List 的 add 与set方法区别

     /** * 在List集合中众多方法中,add(int index,Object obj)方法与set(int index,Object e)方法不易区分 * ,通过下面实例,可以看出两个方法中 ...

  5. Docker学习总结(58)——Dockerfile中,ADD和COPY的区别?

    Dockerfile中的COPY指令和ADD指令都可以将主机上的资源复制或加入到容器镜像中,都是在构建镜像的过程中完成的.COPY指令和ADD指令的唯一区别在于是否支持从远程URL获取资源.COPY指 ...

  6. Set中的add和addAll方法

    最近发现不太清楚Set中add和addAll方法的使用,于是经过学习发现: add方法是用来添加具体的类型,如果你设置了Set<String> set=new HashSet<> ...

  7. java中add和addall区别,java中list的add与addall方法区别

    在做项目时我遇到过这样的问题,java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.alibaba.gette ...

  8. Python基础教程:list中的append()和extend()方法区别

    一.append()和extend()方法都是用来添加数据到list末尾的,两者的区别: append()添加的时候会把添加的数据当成一个整体进行添加,允许添加任意类型的数据 extend()添加的时 ...

  9. Python-list中的append()和extend()方法区别

    一.append()和extend()方法都是用来添加数据到list末尾的,两者的区别: append()添加的时候会把添加的数据当成一个整体进行添加,允许添加任意类型的数据 extend()添加的时 ...

最新文章

  1. windows server 2003磁盘管理
  2. 上传jar到nexus的thirdparty第三方库
  3. 独立成分分析ICA系列4:ICA的最优估计方法综述
  4. 【Boost】boost库中thread多线程详解8——call_once仅运行一次
  5. Javascript的调试利器:Firebug使用详解
  6. android系统设置在哪里,android-如何在系统settings里添加设置选项
  7. 一次性缴纳6万元,退休后每月领1500元养老金,你愿意吗?
  8. 计算机 编程 教程 pdf,计算机专业教程-第3章编程接口介绍.pdf
  9. 编程寓言:两位新手正讨论常用快捷键,路边乞丐直接说出答案!
  10. 关于CMR和SMR技术硬盘的选择
  11. 我在富士康挨踢了七年(七. 激情与暴力3)
  12. Ruby module ---模块,组件
  13. 高中计算机评课,高二信息技术评课记录
  14. JavaScript高级程序设计(第3版)中文在线阅读,也可以免费下载~
  15. 简单银行管理系统C#版本
  16. Layui treeTable相关
  17. 计网实验(一):IP子网划分
  18. 服务器系统自带的系统清理工具,一键清除系统垃圾
  19. 宋九九:怎么做好网站搜索引擎优化,企业网站如何seo优化?
  20. 终极搞定硬盘“A disk read error occured,Press Ctrl+Alt+Del to restart”报错的彻底解决方法...

热门文章

  1. C++关联容器总结一
  2. Java异常处理深入理解_关于java异常处理机制的深入理解.doc
  3. 二、PHP基础——连接msql数据库进行增删改查操作 实战:新闻管理项目
  4. LeetCode 1945. 字符串转化后的各位数字之和
  5. LeetCode 702. 搜索长度未知的有序数组(二分查找)
  6. Django中示例验证码的实现总结
  7. html炫酷弹幕特效,jQuery文字弹幕特效
  8. 模型评价 - 机器学习与建模中怎么克服过拟合问题?
  9. python网站攻击脚本_Python scapy 实现一个简易 arp 攻击脚本
  10. 一训练就显存爆炸?Facebook 推出 8 比特优化器,两行代码拯救你的显存!