【发布时间】:2013-07-10 18:35:09
【问题描述】:
此线程类似于:Disable taglib scanning in google app engine (Jetty)
该帖子的作者接受了错误的答案。
我们试图减少我遇到 taglib TLD 类路径扫描的实例的 appengine 启动时间。
我的应用程序有 50mb 的 jars。 tld 的扫描占用了启动时间的 20%:
(来自 Yourkit 的启动时间截图)。您还可以将 logger.properties 级别设置为 ALL,您将看到类路径扫描问题正在发生。
有没有办法在 appengine 上禁用它?上帝禁止我们与标签库、JSP 或类似的东西有任何关系!我们有一个非常流畅的速度 + spring-mvc 容器。
同样,问题非常清楚:appengine 不尊重 web.xml 中的“org.mortbay.jetty.webapp.NoTLDJarPattern”配置
这东西正在扼杀我们的服务!我们的启动时间已经超过 60 秒,我们需要采取任何措施来减少它。
【问题讨论】:
-
您在 appengine 项目中提交过问题吗? code.google.com/p/googleappengine
-
只是一种预感,但是您是否尝试过重命名您的 JAR 以匹配 AppEngine's webdefault.xml 使用的
NoTLDJarPattern?它不漂亮,但也许命名你所有的 JAR,例如jetty-(...).jar有帮助。或者,将所有 JAR 重新打包到一个大 JAR 中,然后给它取一个 AppEngine 的NoTLDJarPattern涵盖的名称。 -
菲利普,我没试过。我使用 maven 来打包我的项目,这样做似乎很棘手。你有没有尝试过?
-
Philipp,我刚刚完成了将所有罐子重命名为“jetty-”的技巧。非常感谢你的建议。让我们看看它是否改变了什么。我的模块仍然需要 18 秒才能启动 :(
-
@PhilippReichard 似乎有效。该模块始终在 13-15 秒时启动,而之前是 20 秒。
标签: java google-app-engine jetty taglib appengine-maven-plugin