2019.9.25 禁用Tomcat AJP连接器 Tomcat热部署与热加载
禁用Tomcat AJP连接器
AJP(Apache JServer Protocol)
AJPV13协议是面向包的。WEB服务器和 servlet容器通过TCP链接来交互;为啦节省SOCKET创建的昂贵代价,WEB服务器会尝试维护一个永久TCP链接到servlet容器,并且在多个请求和响应周期过程会重用链接。
我们一般是使用Nginx+tomcat的架构,所以用不着AJP协议,所以把AJP连接器。
[root@localhost ~]# vim /usr/local/tomcat8/conf/server.xml // 去主配置文件禁用apache的8009端口
116 <!--
117 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
118 -->
[root@localhost ~]# /usr/local/tomcat8/bin/shutdown.sh
[root@localhost ~]# /usr/local/tomcat8/bin/startup.sh
[root@localhost ~]# netstat -lnpt | grep :8009
———————————————————————————————————————————————————————
Tomcat热部署与热加载
项目开发过程中,经常要改动tomcat的JSP 文件,但是又不想从新启动服务 ,因为服务器从新启动服务需要花费很长时间,但又想直接获得debug结果。
有两种方式:热部署和热加载
热加载:在server.xml -> context 属性中 设置 reloadable="true"
<Context docBase="/web/crushlinux" path="" reloadable="true" />
热部署:在server.xml -> context 属性中 设置 autoDeploy="true"
<Context docBase="/web/crushlinux" path="" autoDeploy="true" />
两者区别:
热加载:服务器会监听 class 文件改变,包括web-inf/class,wen-inf/lib,web-inf/web.xml等文件,若发生更改,则局部进行加载,不清空session ,不释放内存。开发中用的多,但是要考虑内存溢出的情况。 注:热加载更多的是加载配置文件
热部署: 整个项目重新部署,包括你重新打上.war 文件。 会清空session ,释放内存。项目打包的时候用的多。 注:项目打包的时候用的多和项目部署的时候用是多
————————————————————————————————————————————————————————————————————————————