具有 JPA 部署的 Google App Engine App 挂起

2022-09-04 04:56:45

我有一个java GAE Web应用程序,其中datanucleus作为JPA提供程序。在我的计算机上本地部署时 - 部署挂起(需要几分钟)。看看任务管理器,我有一个javac进程正在运行。任何想法出了什么问题?


答案 1

同意。这是GAE的问题,因为它只需要6排列编译,之后应用程序将被部署并显示在浏览器上。我觉得这只是GAE的问题,而不是JPA的问题。我开发了一个类似的应用程序,如果你觉得它是因为JPA,你可以检查相应的数据库管理员,看看有多少线程正在为用户打开。如果您似乎发现有些未被垃圾回收,请检查您的代码。否则,您可以使用连接池机制(使用ORM加速数据库检索).....


答案 2

答案取决于几个参数

  • 你如何部署,你是使用eclipse还是命令行?
  • GAE版本(和GAE/GWT eclipse插件版本)
  • Windows还是Linux?

在任何情况下,线程转储都可以帮助查看哪些非守护程序线程被卡住。

对于 Windows 中的命令行部署 - 在挂起后按以获取线程转储CtrlBreak

Eclipse 中,如果有一种方法可以在调试模式下进行部署,请查看调试视图堆栈以获取相同的信息
,请参阅以下答案:如何在 Eclipse 中强制线程转储?


推荐