在 Wicket 1.5.3 中缓存图像、CSS 和 JS 资源

发布于 2024-12-18 22:27:47 字数 779 浏览 0 评论 0原文

我正在尝试优化 Wicket 1.5.3 应用程序的性能。

我正在尝试启动并运行缓存配置。我已经审阅了“迁移到 1.5”论文、迁移指南和示例。我还确保有一个可用的默认缓存策略,并尝试设置一个自定义策略。

getResourceSettings().setCachingStrategy(strat);

该应用程序在 Base-Frame.html 标头中包含 CSS 和 JS 作为链接和脚本,并且包含大量图像。我目前正在使用这样的东西:

Image img = new Image("logoutImg") {
    protected void onComponentTag(ComponentTag tag) {
        super.onComponentTag(tag);
        tag.put("src", baseUrl + "/images/logout.png");
    }
};

这样,HTTP 标头输出始终是:

Pragma 无缓存
缓存控制无缓存

所有资源和页面的无缓存。

我现在已经实现了一些 servlet 过滤器,这是一种相当粗暴的方法,它避免了所有先前设置的 Wicket 标头。

任何人都可以提供一个正在运行的工作示例,或者一些启动和运行它的提示吗?特别是,使用 FilenameWithVersionResourceCachingStrategy 的东西会非常有帮助,因为这似乎是一个很好的解决方案。

I am trying to optimize the performance of a Wicket 1.5.3 application.

I'm trying to get the caching configuration up and running. I've already reviewed "migration to 1.5" papers, the migration guide and samples. I've also ensured that there is a default caching strategy available, and tried to set a custom one.

getResourceSettings().setCachingStrategy(strat);

The app has CSS and JS in a Base-Frame.html header as link and script, and it has a lot of images. I'm currently using something like this:

Image img = new Image("logoutImg") {
    protected void onComponentTag(ComponentTag tag) {
        super.onComponentTag(tag);
        tag.put("src", baseUrl + "/images/logout.png");
    }
};

With that, the HTTP header output is always:

Pragma No-cache
Cache-Control no-cache

for all resources and pages.

I've now implemented some servlet filters, which is a rather brutish method that avoids all previously set Wicket headers.

Could anyone provide a running working example, or some tips for getting this up and running? In particular, something using FilenameWithVersionResourceCachingStrategy would be really helpful, since that seems to be a good solution.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

哆兒滾 2024-12-25 22:27:47

我想你必须使用 Wicket 的 CachingImage 类,允许你根据浏览器设置标题

I guess you have to use Wicket's CachingImage class allowing you to set the headers accordingly to the browser

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文