tomcat启动时候项目被加载了两次,java类静态变量被加载两次

    昨天部署一个tomcat项目,运行起来后发现一个类的静态变量在不同的请求上来获取的不一样,按原理一个进程下的类以及类的静态变量只会加载一次,不应该出现加载多次的情况,一开始以为是代码问题,研究和分析到昨晚12点也无果;今天又搞了一天终于清楚了,是tomcat的server.xml的配置问题,导致了项目被加载两次,不同的url请求上来进入不同的项目空间。

    原来的server.xml配置:

 

appBase="webapps" : tomcat会加载一次,此次加载的项目可以通过https://ip/platform-framework/xxxx..的url访问;

<Context>的配置:tomcat会加载一次,此次加载的项目可以通过https:/ip/xxxx形式的url访问;

从运行日志来看的,会看到类和静态变量被加载两次,运行的结果完全不是我们所预期的那样。

 

修改后的配置文件如下(删除<context>配置):

 

    删除context节点后,tomcat的加载时间缩短了一半,原来是60秒,修改后是30秒。

 

    有一个奇怪的地方,原来的配置中在<context>已经设置了:reloadable="false",从字面上理解,tomcat不应该再次加载了,想不明白。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值