【发布时间】:2012-04-23 19:52:47
【问题描述】:
我在 Google App Engine 1.6.4 上使用 Guice 3。今天,我在启动时看到了一些不好的事情。我的应用程序(本地启动)需要 12 秒才能启动。
我有一个ServletModule,我在configureServlets 方法中编写所有绑定。
当我将此方法留空时,我的应用程序需要 3 秒才能启动。
此方法包含约 30 个绑定、3 个 MultiBinder 和 1 个 mapBinder...
- 这是正常的开始时间吗? (~9s)
- 如何配置 Guice 处理? (日志等)
- 是否有一些好的做法可以优化 Guice 启动?
谢谢!
【问题讨论】:
-
我想知道普通的 Java 分析技术是否会告诉您其中有多少是 Guice 开销,以及在任何情况下构建绑定的成本有多少。此外,LazySingleton 可能有助于将初始化分散到需要的时候。
-
实际代码有助于弄清楚为什么需要这么多时间。
-
该死,我刚切换到 Google App Engine 1.6.3,现在花了 4 秒...这是 Google App Engine 1.6.4 的问题...有人知道为什么吗?
-
时间都花在了哪里?
-
@Thorbjørn Ravn Andersen - 在
configureServletsend 和 Google App Engine "com.google.appengine.tools.development.DevAppServerImpl start" 之间,我不能告诉你更多(我不知道如何分析 Guice 处理..)
标签: java google-app-engine guice