Ehcache我们见的少,但是应该都是用过的,比如我们使用的mybatis或者hibernate就是使用这个来做的缓存,而Ehcache对于java还是非常友好的,所以如果和java项目结合是比较快捷高效友好的,而他的缺点也是非常明确的,就是仅仅在单体架构没有问题,因为他是不支持分布式和集群的。
![](https://img.haomeiwen.com/i8553141/ef672ece077d8708.png)
![](https://img.haomeiwen.com/i8553141/9de40adfa07b9dde.png)
Memcache我们应该是比较常见到的缓存方案,他针对于redis来说的优点就是多核多线程,也因此对于内存的使用率是非常高的,但是他的缺点就是无法持久化,如果宕机的话,数据是无法恢复,这个也是他非常大的缺点
![](https://img.haomeiwen.com/i8553141/cef295d7f809eb6a.png)
![](https://img.haomeiwen.com/i8553141/8c3f3c4c240d6fec.png)
我们在项目中常常用到的就是redis了,他的数据类型非常多,不像Memcache他就只支持string类型,redis支持string,list,hash等,而他有个缺点就是支持单线程,单核,性能方面不如 Memcache,但是作者也正是因为考虑到多核多线程问题也会很多,所以建议我们通过多做节点的方式来处理,而redis最大的有点就是数据可以持久化了,对于memcache来说是非常好的一点。
![](https://img.haomeiwen.com/i8553141/8aee420fd47e7d66.png)
![](https://img.haomeiwen.com/i8553141/131417b30bedf8bb.png)
网友评论