阿里P7架构师分享:15分钟快速掌握SpringCache(使用详解)
2020-12-13 13:45
标签:数据库 apc 管理器 命中率 技术 ati service contain tag 通常在Web开发中,不同层级对应的缓存要求和缓存策略全然不同,如下图: 1. 缓存命中率 即从缓存中读取数据的次数与总读取次数的比率。一般来说,命中率越高越好。 命中率 = 从缓存中读取的次数 /(总读取次数【从缓存中读取的次数 + 从慢速设备上读取的次数】) 如果要做缓存,就一定要监控这个指标,来看缓存是否工作良好。 2.过期策略 首先自定义一个User实体类。 接下来定义一个缓存管理器: 提供用户查询的服务类,此服务类使用缓存管理器来支持用户查询。 使用SpringCache 来实现上面的例子: 现在还需要一个Spring 配置文件来支持基于注解的缓存: 上面在UserService代码中没有看到任何缓存逻辑代码,只需一个注解@Cacheable(cacheNames="users"),就实现了基本的缓存方案,代码变得非常优雅、简洁。使用Spring Cache 只需完成以下两个步骤: 阿里P7架构师分享:15分钟快速掌握SpringCache(使用详解) 标签:数据库 apc 管理器 命中率 技术 ati service contain tag 原文地址:https://blog.51cto.com/14541438/2438615
下面了解一下缓存中的两个比较重要的基本概念:
Miss 率 = 没有从缓存中读取的次数 /(总读取次数[从缓存中读取的次数 + 从慢速设备上读取的次数])
自定义实现一个缓存管理器:public class User implements Serializable {
private String userId;
private String userName;
private int age;
public User(String userId) {
this.userId = userId;
}
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class CacheManager
public class UserService {
private CacheManager
public class UserServiceUseSpringCache {
private CacheManager
下一篇:C#数字格式
文章标题:阿里P7架构师分享:15分钟快速掌握SpringCache(使用详解)
文章链接:http://soscw.com/essay/33301.html