假设我想通过加载的全部内容,以提高性能.css,.js以及其他一些文件(图标,一些图像)直接从RAM内存没有击中磁盘。
.css
.js
我可以编写servlet / controller来简单地将这些文件加载到上下文init或第一个请求中并进行缓存String,但是 是否有任何标准的解决方案可以在Spring,Servlets或Tomcat规范中为从RAM中选择的静态资源提供服务?
String
也支持适当的标头(缓存控制等)会很好。
Tomcat默认情况下会缓存静态文件。
您可以在context.xml中配置缓存行为。特别是(来自http://tomcat.apache.org/tomcat-7.0-doc/config/context.html):
cacheMaxSize 静态资源缓存的最大大小,以千字节为单位。如果未指定,则默认值为10240(10兆字节)。
cacheObjectMaxSize 将放置在缓存中的静态资源的最大大小。如果未指定,则默认值为512(512 KB)。如果此值大于cacheMaxSize / 20,它将减小为cacheMaxSize / 20。
cacheTTL 重新验证缓存条目之间的时间(以毫秒为单位)。如果未指定,则默认值为5000(5秒)。
cachingAllowed 如果此标志的值为true,则将使用静态资源的缓存。如果未指定,则标志的默认值为true。