Tomcat部署相关

部署文件类型

部署文件一般是war文件,也可以是jar文件

替换JSP

Spring Boot项目,替换JSP文件,Tomcat不用重启,需要在配置文件中加上如下配置

server.jsp-servlet.init-parameters.development=true

application中Tomcat端口号

Spring Boot 内置Tomcat,默认端口号8080

server.port=8686
server.tomcat.accept-count=10240
server.tomcat.max-connections=10240
server.tomcat.max-threads=1024

开发环境的热部署

每次修改Java后,都需要重新运行main方法才能生效,这样会降低开发效率。我们可以使用Spring Boot提供的开发工具来实现热部署,为项目加上以下依赖:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
</dependency>

修改Java文件后,容器会重新加载本项目的Java类。

linux下部署JAR文件

nohup java -jar customerapp-service.jar >/dev/null &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
&代表在后台运行

  • 查看Java进程

查看JAR文件是否部署成功
ps –ef | grep java

  • 停掉JAR文件提供的服务

kill -9 进程号【kill -9 PID】
PID的查看可以用【ps –ef | grep java】命令,其中每一行(很长的时候会占用若干行)的第二个字段就是进程的ID,即PID【processID】

ps -ef|grep sto-transport-databoard-job.jar|grep -v grep|cut -c 9-15|xargs kill -9

设置定时周期

// 每隔3分钟执行一次(第一个秒参数必须是零,不能是*)
trigger.setCronExpression("0 0/3 * * * ?");

JS调试

  • JS文件中添加

debugger;
在谷歌浏览器中运行项目,打开F12,然后通过F8,F10,F11进行调试

修改Tomcat端口号

  • 找到Tomcat的conf/server.xml文件,修改三个端口:SHUTDOWN、HTTP/1.1、AJP/1.3三处的端口,全部改成没有使用过的端口号即可
<Server port="8005" shutdown="SHUTDOWN">
 
<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
 
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

部署顺序

启动顺序

  • 采用分布式部署,Dubbo方式实现
  • 先启动服务提供者(比如sto-service-user.jar)
  • 再启动WEB项目(服务消费者)(比如sto-web-user.war,我们部署的时候直接放编译好的文件夹)
  • 注意:停止服务时,顺序相反

文件权限控制

  • 设置所有人可读、可写、可执行

chmod 755 startup.sh

  • 最高权限

chmod 777 startup.sh

正常部署

将war文件放到tomcat\webapps下,启动Tomcat即可

热加载和热部署

  • 热加载:服务器会监听 class 文件改变,包括web-inf/class,wen-inf/lib,web-inf/web.xml等文件,若发生更改,则局部进行加载,不清空session ,不释放内存。开发中用的多,但是要考虑内存溢出的情况。

在tomcat\conf\server.xml中的内部添加标签,并设置 reloadable=“true”

<Context debug="0" docBase="D:\Jboss-demo" path="/Jboss" privileged="true" reloadable="true"/>
  • 热部署: 整个项目重新部署,包括你重新打上.war 文件。 会清空session ,释放内存。项目打包的时候用的多。

在tomcat\conf\server.xml中的内部添加标签,并设置 autoDeploy=“true”

 <Context debug="0" docBase="D:\Jboss-demo" path="/Jboss" privileged="true" autoDeploy="true"/>
  • 名词解释
  • docBase:项目路径,可以使用绝对路径或相对路径,相对路径是相对于webapps
  • path:访问项目的路径,如:http://localhost:8080/Jboss/
  • reloadable:是否自动加载新增或改变的class文件.
  • debug属性与这个Engine关联的Logger记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。 也就是程序异常时写入日志文件里的详细程度。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值