memcached的简单学习

一、工具是什么

     1 、内存key-value存储容器

     2、memcached主要使用于存储实时性要求不是很高的信息。

二、怎么用

    1、有win、linux、python等支持库

     2、安装请百度。

    重点:memcached存储的是key/value的键值对,但是值必须是可序列化的对象(这里我说的Java),还可以是json,xml,html等,这里要说明memcached集群,server端之间并不会进行相互的通信,通信完全由你的客户端来完成,你只需在客户端规定好你的key值,然后set进行,此时会有一个散列算法,来决定你key会存放在哪台server上。

三、使用缓存的常用方法

      查询数据:

      1、先查缓存,查不到从DB里查询,将DB结果同步到缓存中,do业务逻辑

      2、查缓存,查到了,直接do业务逻辑

     写入数据:

     当数据写入了之后,同步写入到缓存中,如memcached

    更新modify数据:

    DB先modify,然后根据memcached的key值先删除缓存中的数据,再插入新的数据。

    (注意:memcached 内的存储操作是原子的,所以信息的更新不会让客户机只获得部分数据;它们获得的或者是老版本,或者是新版本。)

四、web开发中的启发

    可以用spring aop来拦截你要缓存的service,通过类名+方法名+参数名,来做到memcached的key值得唯一。

    可以用于分模块开发 ,因为调用的都是同一个类中的方法,但是拦截器也是回影响性能的,但是开发效率会提高的,还有就是不会破坏你的service的业务逻辑。


五、参考推荐

http://snowolf.iteye.com/blog/1576818


   

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转载地址:http://gnucto.blog.51cto.com/3391516/998509 Redis与Me...
    Ddaidai阅读 21,504评论 0 82
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,799评论 19 139
  • //我所经历的大数据平台发展史(三):互联网时代 • 上篇http://www.infoq.com/cn/arti...
    葡萄喃喃呓语阅读 51,525评论 10 200
  • 今天两点半便起床了 重新听了一遍浪潮式发售,有新的认知 1、建立一个自己的客户名单 2、找准一个领域做精准的内容营...
    陈泊辰阅读 1,508评论 0 0
  • 今天大年初三,以前都是姑姑们去爷爷家。今年爷爷奶奶在我们家过年,所以姑姑们就到我家来了。 大姑,二姑,三姑,小姑,...
    9876543h阅读 2,994评论 0 0