当前位置: 首页 > 知识库问答 >
问题:

Play框架1.2.5应用程序启动慢

江温书
2023-03-14

我正在使用Play框架1.2.5和Hibernate3.25来开发我的Web应用程序。我遇到应用程序启动问题,速度很慢:(

对于任何JavaEE servlet驱动的应用程序,我们使用ServletContextListener来初始化会话工厂(这确实是一项耗时的工作),一旦部署了应用程序,会话工厂就会被初始化,并且所有这一切都必须在应用程序准备好为最终用户使用之前完成。这样,当用户触发第一个请求时,第一个请求的响应时间更快。

但是,对于Play框架不遵循任何servlet架构。因此,不确定如何实现类似于 ServletContextListener 的东西,它将在应用程序准备好供最终用户使用之前创建所有会话工厂。

如果没有这个,第一次应用程序对于第一个请求来说真的非常慢。

我相信在游戏框架中也可能有一些东西会做同样的事情,但我不知道。

请让我知道这件事。

共有3个答案

彭宜人
2023-03-14

JB 应该是正确的。简而言之,您可以使用 --%prod 选项启动服务器

play run --%prod

play start --%prod
沈思博
2023-03-14

您可能在开发模式下运行应用程序,在第一个请求中,所有内容都是在延迟编译和初始化的。生产模式在实际启动服务器之前编译所有内容。请参阅 http://www.playframework.org/documentation/1.2.5/production

勾炜
2023-03-14

您可以使用作业来初始化您的应用程序。例如,您可以用@OnApplicationStart注释一个引导作业,它将负责加载您的静态数据或初始化您的缓存或工厂

@OnApplicationStart
public class Bootstrap extends Job {

    public void doJob() {
        //Load static data
        //Initialise cache
        //Initialise factories
        ...
        // ready to serve application
    }
}
 类似资料:
  • 这个bug似乎是一个递归bug,公司要求工作表,而工作表又要求公司,这……你就明白了。我已经在互联网和堆栈溢出中搜索了这个问题,我发现了错误发生的原因,但解决方案始终是编写自己的解析器或使用flexjson或其他方法。我只是想知道是否有解决办法,这必须是因为游戏很受欢迎,人们肯定会在一次操作中获取帖子和评论,或者不是吗? 必须有一个解决方案,不需要替换掉json解析器或编写自己的解析器。 公司.j

  • 我需要为以下语法添加路由: 在routes文件中,我尝试使用以下命令 然而,上面的代码并没有捕获URL,而是转到配置中的另一个处理程序(位于select/{term}: 任何关于修复或故障排除的想法将是最受欢迎的。谢谢

  • 本文向大家介绍Android应用框架之应用启动过程详解,包括了Android应用框架之应用启动过程详解的使用技巧和注意事项,需要的朋友参考一下 在Android的应用框架中,ActivityManagerService是非常重要的一个组件,尽管名字叫做ActivityManagerService,但通过之前的博客介绍,我们知道,四大组件的创建都是有AMS来完成的,其实不仅是应用程序中的组件,连An

  • 2.5.应用程序框架 应用程序框架是Android程序的执行环境,也是开发者的强大工具箱。另外,它也拥有Android平台中最全面最完善的文档。良好的文档可以激发广大开发人员的创意,也可以为他们构建优秀的应用程序提供有力的支持。 在应用程序框架中,你可以发现很多为Android设计的Java库。除此之外,也有系统服务的支持,比位置、传感器、WiFi、电话等等。 在后面的学习与实践中,将把我们的主要

  • 我使用Hadoop构建了一个在分布式环境中搜索类似图像存储的应用程序。但是Hadoop不支持实时处理,这就是响应时间长的原因。我知道Storm是另一个大数据分析应用程序的框架。但是我很困惑我们是否可以使用Storm来实现这种应用程序。 有没有人建议什么样的应用程序可以有效地使用Storm框架。