tomcat提示静态文件缓存超限,造成日志爆满的问题
日志片段:
21-Apr-2023 11:20:47.215 警告 [http-nio-80-exec-5308] org.apache.catalina.webresources.Cache.getResource Unable to add the resource at [/FileUploads/www/site/2022/11/30/ZZVRQAHD08ZX4GOW47.jpg] to the cache for web application [] because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache
大概意思就是在将新的静态文件加入缓存区时内存不足,可以适当调大缓存区的大小。
解决办法:
在tomcat的“/conf/context.xml”中的<Context></Context>中间添加以下标签:
<Resources cachingAllowed="true" cacheMaxSize="100000"/>
- cachingAllowed:如果此标志的值是true,将用于静态资源的高速缓存。如果没有指定,该标志的默认值是true。这个值可以在Web应用程序运行时进行更改(例如,通过JMX)。当缓存在缓存禁用任何资源目前是从缓存中清除。
- cacheMaxSize:以KB为单位的静态资源缓存的最大尺寸。如果未指定,则缺省值为10240 (10M)。这个值可以在Web应用程序运行时进行更改(例如,通过JMX)。如果缓存正在使用的内存大于新的限制缓存将尝试规模随着时间的推移,以满足新的限制,以减少。如果需要的话,cacheObjectMaxSize将降低,以确保它是不大于 cacheMaxSize/20。
ps:其实更好的解决办法是将所有的静态文件都让nginx进行反代。
版权声明: 本文为博主 网无忌 原创文章,欢迎转载,但请务必标注原文链接。
分类:
服务器相关
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2020-04-21 将项目发布到Maven中央仓库时关于GPG的一些操作日志