发表于: 2017-10-11 20:58:45

2 860


今天完成的事情:

先说结论

今天一头栽在了测试上面,导致忙活了一天什么东西都没做出来

1.更换测试页面

去了解了官网教程中“为什么要压测”,看到一个压测例子

https://help.aliyun.com/document_detail/29322.html

里面的网站初始压测值很糟糕,原因是前端加载时间太长,于是我去测试了下我的服务器的前端加载

有点糟糕,而且我无法优化,于是去写了个没有前端组件的页面:

压测设置:


压测结果:

结论是:没什么区别,测了好几次,波动太大了,有的时候是有缓存的快,有的时候是无缓存的快,也有两个几乎是一样的情况

开始怀疑代码:1.是否没缓存上?2.缓存上了是否还是从数据库取出?

验证1:

结论:缓存中是有数据的

验证2:

public List<Student> selectAllStudent() {
List<Student> students = (List<Student>) xMemcachedUtil.getCache("students");
   if (students != null) {
logger.error("使用缓存");
       return students;
   }
logger.error("使用数据库");
   List<Student> studentsFromDB = studentDao.selectAllStudent();
   xMemcachedUtil.addCache("students",3600,studentsFromDB);
   return  studentsFromDB;
}

打印日志后得到结果:

结论:除了第一次访问,其他全部从缓存中取出

说好的使用缓存网站性能飙升呢……是我的理解出错了吗……

然后先把这个问题放在一边,写json接口,又出错了,然而此时已经晚上九点了……

看似一天一直在干活,回头一看,自己什么都没干


2.师兄说代码有点冗余,写个XMemcached的工具类

但是这个东西要导入bean,在静态方法中不能导入bean

按照百度得来的方法1:

public void init() {
xMemcachedUtil = this;
   xMemcachedUtil.memcachedClient = this.memcachedClient;
   xMemcachedUtil.memcachedClientBuilder = this.memcachedClientBuilder;
}

失败,空指针异常,修修改改也不行,放弃了

方法2:在静态变量中加载Spring的XML文件,用getBean方法

虽然容易实现,但是这样每使用一次都要加载xml,觉得这个方法不太好,就没用

方法3:不使用静态方法了,就当成一个bean来用吧

@Component
public class XMemcachedUtil {

引入

@Resource
private XMemcachedUtil xMemcachedUtil;

效果:

List<Excellence> excellences = (List<Excellence>) xMemcachedUtil.getCache("excellence");
if (excellences != null) {
return excellences;
}
List<Excellence> excellencesFromDB = excellenceDao.selectExcellenceByName();
xMemcachedUtil.addCache("excellence", 3600, excellencesFromDB);
return excellencesFromDB;


明天计划的事情:

不敢吹牛了,完成压测json和JSP,可以部署完新的服务器还有完成负载均衡的话那就更好


遇到的问题:

1.测试问题,韦杰师兄说我的网站性能不好,用了缓存也不会有很大的提升

2.对于有bean引入的工具类封装,没有找到很好的方法,放弃使用静态方法,用@Component引入使用

3.Json接口写的不对,明天解决

收获:

1.封装XMemcache,去除冗余代码

2.对测试更了解了点,测试中后端和前端同时要优化,但是对缓存对网站的性能的影响产生了怀疑



进度:

任务6开始时间:2017.10.08

预计demo时间:2017.10.16

延期风险:无

禅道

http://task.ptteng.com/zentao/project-task-350.html




返回列表 返回列表
评论

    分享到