发表于: 2017-06-02 01:23:45
1 967
这部分是6月1日的日报。
今天完成的事情:
1、下载JMeter,压测自己的JSP,查看TPS数据,调整并发数,压到程序挂掉为止。
压测的是css任务10的index.jsp 页面,有3处是动态读取的数据。
1
2
3
上图:Number of Threads(users) 线程数:可以理解为用户数。若设置为1000,即相当于1000个用户。
Raam-Up Period:每个线程的执行间隔,设置为0的话即相当于并发。
上图,设置一些常用的报告。
上图,设置各种访问的参数。
下图,出现多数访问失败的情况,这就是挂了的意思吗?
2、、安装 Windows 版本的 memcache..exe 到本地。为项目添加 memcache。
也就是类似于这样:
@Service
public class JnshuStuShowServiceImpl implements JnshuStuShowService{
@Autowired
private SqlSession sqlSession;
@Override
public List<JnshuStuShow> selectAll() {
List<JnshuStuShow> jnshuStuShows = null;
if (null != MemoCachedUtil.get("jnshuStuShows")){
jnshuStuShows = (List<JnshuStuShow>) MemoCachedUtil.get("jnshuStuShows");
System.out.println("jnshuStuShows从memcache缓存中取出");
return jnshuStuShows;
}
jnshuStuShows = sqlSession.selectList("com.jn.mapper.JnshuStuShowMapper.selectAll");
MemoCachedUtil.add("jnshuStuShows",jnshuStuShows);
System.out.println("jnshuStuShows数据从数据库中取出,已加入memcache");
return jnshuStuShows;
}
}
测试数据从MySQL读取:
测试数据从memcache读取:
3、nginx配置负载均衡。
遇到的问题:
1、通过压测来深刻理解如何做性能优化。
2、停止Memcache进程,观察压测数据。部署两台WEB,使用Nginx的Upstream来做负载。重新压测。
两台WEB: 一台“活的”,intellij idea的maven jetty9插件方式启动。
一台“死的”,本地安装jetty7,放入war包,然后启动。
但本地的jetty7启动时报错了。
我的war包名字分明就是 myJavaTest.war。但它报的确是找不到test.war。
收获:
一、理解90%线的意义。
一组数:
2.1、2.5、3、3.4、3.4、4、4、4、4、5、5、5、5.9、5.91、6.8、8、12、24、24.1 按由大到小将其排列。
求它的第90%百分位,第18个数是12 么,他的90%Line 就是12。 那么这个数组中有90%的数将小于等于12 。
用在性能测试的响应时间也将非常有意义,也就是90%请求响应时间不会超过12 秒。
评论