发表于: 2018-01-12 21:32:33
1 740
今日完成
1。jmeter测试比对有无memcache的情况下的tps。
(1)其中首页只是用了一部分memecache,其他页面全部使用了memecache。1秒内350个用户同时访问的情况下,90%line的差异。
2.重新编写了一个json的页面和jsp的比较一下
(1)直接使用 @ResponseBody 注解将响应的对象转换为json字符串。
导入jar包
<!-- 映入JSON -->
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
<version>1.9.13</version>
</dependency>
@RequestMapping("/json1")
public @ResponseBody List<StudentCustom> testjson (Model model){
List<StudentCustom> studentlist = studentService.findStudentList(null);
return studentlist;
}
(2)访问就可以在页面上输出json了。
(3)再编写一个测试计划,对其进行测试。
本地测试结果。
并没有什么差别啊?这个可能与传输距离。
远程服务器测试,tps一致,但是90%line的响应时间明显降低很多。
3.配置nginx做负载均衡
(1)找到nginx的配置文件,这里血药注意一下,解压版的与安装板的配置文件不一样。安装版的在
/etc/nginx/sites-available 下的default文件。
(2)配置两个web容器
这里注意tomcat要占用两个端口,所以要改两个端口。
参考:https://www.cnblogs.com/sj521/p/5974562.html
(3)测试负载均衡情况的访问
配置负载均衡以后,吞吐量明显得到了提升,90%线也对应降低了。
(4)配置动静分离,使用nginx处理静态资源,因为,nginx处理静态资源的能力远远高于tomcat.
参考
http://www.jb51.net/article/77611.htm
可以看到含有css等静态资源的页面性能得到了提升。
遇到问题
1.memecache的脏数据没有处理,进行更新,删除,修改操作后,查找的数据没有更新。删除数据后数据还在。
2.使用负载均衡后session共享存在问题,因为本地的sessionID是储存在同一个地方的,会出现冲突。
造成,登录后的用户信息消失。
明日计划
1.学习redis,一起解决脏数据的问题
2.再测试一下负载均衡。
评论