php中redis memcache等缓存的应用

欢迎加入,新群号码:99640845


在web开发的过程当中缓存是必不可少的工具,不管是mamcache仍是redis我想你们都颇有所涉略。web

我分享一下我我的在工做中的一些使用后的想法。

===========================================
redis

缓冲应用设计:数据库

对于缓存的使用我想你们应该都会使用,简单的key=》value 我就很少说什么了 ==  不会用的能够看下手册缓存


缓存无外乎就是在应用于数据库之间创建一个中间的数据层来减小数据库的压力,这是最简单的设计方式 对于缓存中的数据能够服务器

经过异步的方式进行持久化操做
异步

而后,在实际应用的过程当中,会有不少空值去缓存中查找这样的话会浪费大量资源,因此能够设计成这样:工具

在映射中若是找到key值说明存在value因此再去缓存中寻找数据 不然直接false 能够大大节省缓存的查找时间spa

在使用缓存的时候,冗灾也是也是一个很重要的事情,redis还好,能够数据持久化 若是是memcache的话就会很尴尬.net

如上,能够作到在应用中作到,当缓存服务器出现问题的时候,去数据库查询返回数据,而不会由于缓存丢失而致使应用总体挂掉。设计

同时触发缓存补偿机制,能够切换缓存服务器,而且从新创建缓存池。这样就能够在缓存服务器出现问题的时候,不影响线上应用。

至于数据的惟一性和数据的持久化问题,要根据具体的业务逻辑设计本身的,数据异步同步机制。

能够的话,能够把数据根据实效性拆分。时效性高的用实时队列任务,时效性稍低的数据能够阶段性同步。

个人想法大概就是这个样子。