让tomcat支持软连接,实现快速回滚【转】

来源:互联网 发布:香港 收音机软件 推荐 编辑:程序博客网 时间:2024/05/18 00:51

文章来源:让tomcat支持软连接,实现快速回滚


【场景描述】

你是否遇到过这种情况,要重新发布一个项目,得作如下操作:

1、先把tomcat关掉;

2、删掉tomcat下的项目文件(按需备份),把war包放在tomcat对应正确路径下解压;

3、重启tomcat,重启后发现部署失败代码有问题则执行4,否则结束。

4、部署出错,赶紧关闭tomcat,把上一个版本/备份拷回来,再重启tomcat,结束。

。。。是不是觉得太low?这里tomcat关闭重启的时间太长了,并且有可能要来回拷贝解压两次~!不能忍,来巧妙使用tomcat+软连接,轻松解决两个问题,逼格高高的~


【解决思路】

1、将war包解压到特定目录下解压,比如/var/webapps/项目名/时间戳;

2、关闭tomcat;

3、删除tomcat下的项目文件(无需备份,因为是软连接),用软连接的方式复制1解压的文件到tomcat目录下;

4、重启tomcat,重启后发现部署失败代码有问题则执行5,否则结束。

5、部署出错,关闭tomcat,删除软连接,重建软连接指向/var/webapps/项目名/上一个时间戳,重启tomcat,结束。

怎么样?tomcat关闭重启的时间基本看手速了,war包也只需拷贝解压一次。写成脚本来运行,风味更佳。


【遇到的问题】

1、要让tomcat支持软连接,需要在tomcat配置文件conf/context.xml里追加allowLinking="true"(tomcat8开始配置有变),具体如下配置:

[plain] view plain copy
  1. <!-- Tomcat 7: -->  
  2. <Context allowLinking="true" />  
  3.   
  4. <!-- Tomcat 8: -->  
  5. <Context>  
  6.   <Resources allowLinking="true" />  
  7. </Context>  


【资料】

1、让tomcat支持软连接:http://tomcat.apache.org/migration-8.html



原创粉丝点击