发表于: 2017-05-11 21:49:41

1 1289


今天完成的事情:

重新写了一个ssm框架,给list增加了缓存,并在jmater中进行有无缓存的压测对比

public class UserServiceImpl implements UserService {
@Resource
   private UserDao userDao;
   public List<User> selectAllUser() {
//        return userDao.selectAllUser();
       List<Long> longList = userDao.getUserIdList();
       List<User> userList = new ArrayList<User>();
       User user;
       for (Long id : longList){
if (MemcachedUtils.get("user_"+id)!=null){
user = (User)MemcachedUtils.get("user_"+id);
               System.out.print("这是从缓存中获取");
           }else {
user = userDao.getId(id);
               System.out.print("这是从数据库中获取User:id="+id);
               MemcachedUtils.set("user_"+id,user,new Date(1000*20));
               userList.add(user);
           }
}
return userList;
   }
}

线程数1000 1s 循环2

线程数2000 1s 循环2

线程数3000 1s 循环2

线程数4000 1s 循环2(开始出错)

下面是没有加缓存的情况

线程数1000 1s 循环2

线程数2000 1s 循环2

线程数3000 1s 循环2

线程数4000 1s 循环2

明天计划的事情:

遇到的问题:

现在还是发现之前的内容掌握的不够牢靠,为task6重写一个ssm整合只实现查的方法就用了一个小时(加改错)....写完后还是发现以前有很多不够熟悉或者没有注意的点OTZ...

jmeter聚合报告中90%line还是不是很明白什么意思,网上给的解释是:表示响应时间不大于该时间值的请求样本数占总数的90%.......不是很懂

为什么没有加缓存的时候错误率反而会随着线程数量的提升而下降.......有点不明白

收获:

通过写方法体会到缓存在项目中是如何被使用的.


返回列表 返回列表
评论

    分享到