Web应用文件夹下上传的文件量越来越大,Tomcat启动越来越慢,有没有好的解决方案

ayesd 发布于 2013/04/13 17:23
阅读 2K+
收藏 3

场景:tomcat下运行单个WEB应用,web应用有上传图片功能,运行一段时间后,发现上传的图片越来越多,tomcat每次重启由9秒多变成了90多秒。

问题:如何解决tomcat启动越来越慢的问题。

个人思考:

1、将上传目录指定到tomcat目录以外的目录,如其他盘。带来的问题:如果是图片信息,则没办法直接用img标签引用改图片。

2、将非结构化数据,即文件,作为一个单独的应用进行管理。即编写一个新的web应用,提供文件的上传、下载、链接等服务。但是同样存在上面的问题:新的web应用同样会出现文件越来越多,tomcat启动时间会越来越长的问题。

在此向各位有经验的大侠请教,如何解决此问题,希望能够详细描述解决方法,最好是实际经验。

加载中
0
晕dows
晕dows
价格apache或者nginx服务器 ,然后静态资源像图片之类的直接转发,动态内容,例如.do之类的转交给tomcat处理
0
pank
pank
楼上正解
0
克勤
搞个分布式文件系统
0
Photon
Photon
简单点可以做个文件映射,在server.xml加个配置,上传的文件保存到tomcat以外的其他目录。
ayesd
ayesd
额~ 竟然忘记这个事情了,嘿嘿 决定试一试,谢谢提醒
0
hujinhu
hujinhu
放到项目以外的地方,那图片什么的还能访问吗?
0
andersonoy
andersonoy

1、将上传目录指定到tomcat目录以外的目录,如其他盘。带来的问题:如果是图片信息,则没办法直接用img标签引用改图片。

哈哈,我最近遇到了根你一样的问题,找了好久,最后试出来了,方法就是你 的第一条。img标签是没有办法引用web应用外的文件的,不过加个虚拟路经指向实际路经就可以了。

c:/uploadfiles/pic图片保存路径。

虚拟路径<Context path="/data" docBase="c:/uploadfiles/pic" .../>

img标签访问路径:<img src="/data/xxxx.jpg" />

这样就可以访问应用外部资源了。

不过实际应用是不是这么干的,不知道,我的应用还没有放到服务器空间去,

多多交流。


返回顶部
顶部