发表于: 2017-10-15 22:30:59
1 690
今天完成的事情:
1.在同一个服务器上安装两个web服务
原本的方案是使用一个tomcat开放两个端口以安装两个web服务
但是花了一个上午加一个中午都失败了,百度上前几页都看过了,但是还是只能启动一个端口,原因未知
于是改成安装两个tomcat
具体操作:
①第一个tomcat设置文件不变,编辑第二个tomcat的server.xml:
—————————————————————————————————————————————
8005的关闭端口,改成8006
—————————————————————————————————————————————
8080端口,改成8081
8443端口,改成8444
————————————————————————————————————————————
8009端口,改成8010
8443端口,改成8444
————————————————————————————————————————————
②在两个tomcat的
/usr/local/tomcat2/conf/Catalina/localhost/
目录下分别新建ROOT.xml
内容为:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/" docBase="/data/tomcat-home1/ROOT" debug="0" privileged="true" reloadable="true"/>
和
<?xml version='1.0' encoding='utf-8'?>
<Context path="/" docBase="/data/tomcat-home2/ROOT" debug="0" privileged="true" reloadable="true"/>
即设置部署目录
若出现有无法关闭tomcat的情况,查出tomcat的pid,使用kill -9 pid强制关闭tomcat后再启动
2.进行负载均衡的压测
20x20无缓存负载均衡压测,对比单个服务器20x20无缓存压测
性能反而下降了
没有达到预期,现在进行压测已经没有意义了,查看原因出在哪里
①修改代码打印日志:
AOP记录控制器:
<aop:config>
<aop:aspect ref="ControllerLogger">
<aop:before method="beforeTime" pointcut="execution(* cn.summerwaves.controller.InterceptorController.toTPS())"/>
<aop:after method="afterTime" pointcut="execution(* cn.summerwaves.controller.InterceptorController.toTPS())"/>
</aop:aspect>
</aop:config>
Service中直接打印日志记录数据库与缓存:
修改tomcat的server.xml
增加%D记录响应时间
接下来查看使关闭缓存时的记录:
代码中的日志打印:
控制器和数据库的响应时间都很短
查看nginx的访问日志:
不知为何任务3做的统计脚本无法使用,用肉眼来观察一下吧
记录中大多响应时间都很短:
但是会出现响应时间很长的情况:
可以看出速度便是在这里被拖累了
我们去查看一下两个tomcat的响应时间
tomcat1:
响应时间普遍很短,没有到达三位数的情况
tomcat2:
查看前两百条数据,同样的情况出现了,反应速度都没到达三位数
可以看出tomcat、数据库、控制器都没有问题,问题出在了nginx身上,具体是什么问题今天已经没有时间了,明天解决
PS隔日解决:nginx配置文件中负载均衡配置我写的接口是"服务器IP:端口",写成“127.0.0.1:端口”,并发数在20和20以下就正常了,但是在50时性能会直接下降,top暂时会卡住,等到压测结束会恢复,这就是服务器性能有限了吧
明天计划的事情:
1.解决nginx反应慢的问题
2.学习redis的使用方法
遇到的问题:
1.tomcat无法开放两个端口
解决方法:安装两个tomcat
2.nginx反应慢
待解决
收获:
1.学会使用如何在同一个服务器上安装两个web服务
2.对影响服务器响应速度的因素有了一个更深入的了解
进度:
任务6开始时间:2017.10.08
预计demo时间:2017.10.16
延期风险:有
理由:负载均衡压测出现问题
禅道
http://task.ptteng.com/zentao/project-task-350.html
评论