【发布时间】:2011-09-28 08:02:05
【问题描述】:
在我当前的一个项目中,JSP 变得越来越大(很多 jstl end el 逻辑,没有 Java),并且由于流量增加,许多级别的缓存已成为必要。有些组件需要是动态的,因此我们将无法使用基于过滤器的解决方案。不幸的是,该逻辑使用了许多自定义标签,几乎不使用包含,所以SimplePageFragmentCachingFilter 也无济于事。
我正在寻找的是这样的:
<ehcache:cache key="${myApp.cacheKey}">
<many />
<jsp />
<tags />
<here />
</ehcache:cache>
此标记将为pageContext.out 公开一个虚拟写入器并将该写入器刷新到缓存和页面,并且在后续请求中将直接从缓存写入pageContext.out。
这样的野兽存在吗?
提示:我知道我们应该改变设计,减少 JSP 中的逻辑等。不幸的是,这不会发生。我不是在这里做决定的人,所以请不要去那里。哦,还有:是的,我已经用谷歌搜索过了。
【问题讨论】:
-
我见过这样一种机制用于缓存整个 JSP 的结果。但那是在一个名为 CoreMedia 的专有内容管理系统中。
-
@nfechner 但它是 JSP 内部的一个标记,还是一种从外部缓存 JSP 调用的机制?
-
第二种情况。缓存整个 JSP。所以我认为该解决方案不会对您有所帮助。
-
@nfechner 好的,这大致相当于我在问题中提到的
SimplePageFragmentCachingFilter,然后 -
>这样的野兽存在吗?由于不再支持 OSCache(它的 jsp 标签起到了作用),我认为不幸的是,答案是否定的。但我仍在寻找......