tomcat 缓存导致的严重问题

简介:

今天在部署jsp代码的时候,打成war包丢到线上服务器的tomcat容器里面。结果死活不出结果。

咨询了下同事,说是tomcat的缓存的问题。


清理缓存方法如下:

step1 停掉tomcat,进入tomcat的主目录。

step2 删掉work目录下全部文件(work目录不要删!)。

step3 删掉temp目录下的所有文件。

step4 再次启动tomcat即可


下面是摘自其他人博客的:

tomcat有一个work目录,里面存放了页面的缓存,访问的jsp都会编译(从 work里进入Catalina后的如localhost站点文件夹下的项目,我们可以看到那些jsp页面会被编译成应该是servlet文件,下次再来 访问时,就直接运行servlet类就可以向客户端反应响应页面了,所以有的博客说第一次访问时会比较慢,是因为新发布上去的页面在第一个人访问时,会先 编译成servlet文件,所以慢了,一旦编译好,那么除非jsp页面修改,不然下次访问直接运行servlet就可以响应用户,所以快),编译后的文件都会存储在work目录下。而tomcat显示的目录,都会从这个缓存里找编译后的jsp对应的class文件。所以当清空了work目录后,该过程将会从新来过。     
    有的时候会遇到一个问题,就是修改后的页面在tomcat运行的时候显示不了修改后的痕迹。这个时候删除work目录下对应的项目文件夹,重新启动tomcat就可以了。



还可以修改server.xml ,添加个reloadable="true",例如下面这种写法:

<Context path="/" docBase="/home/website/web1"  reloadable="true">  

然后重启tomcat即可。










本文转自 lirulei90 51CTO博客,原文链接:http://blog.51cto.com/lee90/1775253,如需转载请自行联系原作者
目录
相关文章
|
域名解析 缓存 安全
Tomcat - 如何优化 Tomcat 配置(内存、并发、缓存)优化
Tomcat - 如何优化 Tomcat 配置(内存、并发、缓存)优化
1221 0
|
5月前
|
缓存 前端开发 Java
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
【Azure 应用服务】App Service 使用Tomcat运行Java应用,如何设置前端网页缓存的相应参数呢(-Xms512m -Xmx1204m)?
|
7月前
|
缓存 负载均衡 NoSQL
Redis系列学习文章分享---第十四篇(Redis多级缓存--封装Http请求+向tomcat发送http请求+根据商品id对tomcat集群负载均衡)
Redis系列学习文章分享---第十四篇(Redis多级缓存--封装Http请求+向tomcat发送http请求+根据商品id对tomcat集群负载均衡)
92 1
|
7月前
|
缓存 安全 前端开发
(转)浅谈tomcat优化(内存,并发,缓存,安全,网络,系统等)
(转)浅谈tomcat优化(内存,并发,缓存,安全,网络,系统等)
|
Java 应用服务中间件 容器
Tomcat报错 严重: A child container failed during start
Tomcat报错 严重: A child container failed during start
201 0
|
缓存 前端开发 JavaScript
记录:centos7.6之Tomcat8.5发布dist包vue页面缓存问题...【解决方案】
记录:centos7.6之Tomcat8.5发布dist包vue页面缓存问题...【解决方案】
249 1
|
缓存 Java 应用服务中间件