随笔分类 -  缓存

摘要:最近项目组有用到这三个缓存,去各自的官方看了下,觉得还真的各有千秋!今天特意归纳下各个缓存的优缺点,仅供参考! Ehcache 在java项目广泛的使用。它是一个开源的、设计于提高在数据从RDBMS中取出来的高花费、高延迟采取的一种缓存方案。正因为Ehcache具有健壮性(基于java开发)、被认证 阅读全文
posted @ 2018-01-01 00:57 危常焕 阅读(792) 评论(0) 推荐(0)
摘要:最近了解了下缓存技术,主要分为内存缓存 和磁盘缓存,然后分布式里面有一些消息的推送,节点的一些处理。现在很多的用OSCache,EhCache 等等,资料很多,暂时就不多说了,我这里仅仅为了了解缓存框架的的知识,自己临时写一个缓存,后面可以实现AOP 和spring 结合。 实现功能:1.数据都缓存 阅读全文
posted @ 2018-01-01 00:47 危常焕 阅读(824) 评论(0) 推荐(0)
摘要:问题描述 场景:我们的应用系统是分布式集群的,可横向扩展的。应用中某个接口操作满足以下一个或多个条件: 1. 接口运行复杂代价大, 2. 接口返回数据量大, 3. 接口的数据基本不会更改, 4. 接口数据一致性要求不高(只需满足最终一致)。 此时,我们会考虑将这个接口的返回值做缓存。考虑到上述条件, 阅读全文
posted @ 2018-01-01 00:36 危常焕 阅读(5636) 评论(0) 推荐(0)
摘要:缓存的应用场景 CPU缓存 是位于CPU与内存之间的临时存储器,它的容量比内存小的多但是交换速度却比内存要快得多。(选用存储介质,提高访问速度:高速缓存>内存;减少重复量) 浏览器缓存 浏览器可以缓存一些静态资源,比如图片、js、css等,这些都是不常变化的内容,所以没有必要每次都去请求。(减少网络 阅读全文
posted @ 2018-01-01 00:33 危常焕 阅读(2338) 评论(0) 推荐(0)
摘要:1. redis加锁分类 2. 第一种锁命令INCR 这种加锁的思路是, key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作进行加一。 然后其它用户在执行 INCR 操作进行加一时,如果返回的数大于 1 ,说明这个锁正在被使用当中。 3. 第二种锁SETNX 这种加锁 阅读全文
posted @ 2017-12-31 16:44 危常焕 阅读(8730) 评论(0) 推荐(0)
摘要:前言 设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。 缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时, 阅读全文
posted @ 2017-12-30 17:35 危常焕 阅读(285) 评论(0) 推荐(0)
摘要:1.maven依赖 <!-- ehcache 相关依赖 --> <dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.8.2</version> </dependency> 阅读全文
posted @ 2017-12-26 18:49 危常焕 阅读(2637) 评论(0) 推荐(0)