Java 带有JPA部署的Google应用程序引擎应用程序挂起
我有一个java GAE web应用程序,datanucleus是JPA提供商。在我的计算机上本地部署时-部署挂起(需要几分钟)。看看任务管理器,我有一个javac进程正在运行。知道哪里出了问题吗?答案取决于几个参数Java 带有JPA部署的Google应用程序引擎应用程序挂起,java,google-app-engine,jpa,datanucleus,Java,Google App Engine,Jpa,Datanucleus,我有一个java GAE web应用程序,datanucleus是JPA提供商。在我的计算机上本地部署时-部署挂起(需要几分钟)。看看任务管理器,我有一个javac进程正在运行。知道哪里出了问题吗?答案取决于几个参数 如何部署,您使用的是eclipse还是命令行 GAE版本(和GAE/GWT eclipse插件版本) Windows还是Linux 在任何情况下,a都可以帮助查看哪些非守护进程线程被卡住 对于Windows中的命令行部署-挂起后按CtrlBreak以获取线程转储 在Eclips
- 如何部署,您使用的是eclipse还是命令行
- GAE版本(和GAE/GWT eclipse插件版本)
- Windows还是Linux
也可以看到这个答案:这取决于您使用的平台
用法:
发送信号
-向进程发送ctrl-break(十六进制确定)
你可以通过匿名CVS在
cvs-d:pserver:anon@www.latenighthacking.com:/code cvsroot co 2003/SendSignal
同意。这是GAE的问题,因为它只需要进行6排列编译,然后应用程序才会部署并显示在浏览器上。我觉得这只是GAE的问题,而不是JPA的问题。我已经开发了一个类似的应用程序,如果你觉得它是因为JPA,你可以检查相应的数据库管理员,看看有多少线程正在为用户打开。如果您似乎发现一些未被垃圾收集,请检查您的代码。否则您可以使用ConnectionPooling机制(使用ORM加速数据库检索) 我最近通过eclipse在google app engine中部署了我的简单应用程序。它多次未能部署。一段时间后,它成功部署。我可以访问该应用程序。如果它挂起,请停止部署过程并重新部署我也经常遇到这种情况。通过取消并回滚,然后再试一次,结果很好。有时甚至需要几次。我怀疑该应用程序启动不正常(有时会被发现[查看日志]),但有时出于某种原因,它会持续很久。你说的“在本地部署”是什么意思?你要么在本地运行,要么部署它——不是两者都有。你能发布你的web.xml和appengine web.xml吗?我猜JPA是无辜的,只是谷歌有点超载。听从史蒂文的建议。这仍然是一个问题吗?我同意@Thilo,我不知道JPA中的什么可能导致javac运行,但GWT肯定会。
Usage:
SendSignal <pid>
<pid> - send ctrl-break to process <pid> (hex ok)
You can get the source via anonymous CVS at
cvs -d :pserver:anon@www.latenighthacking.com:/code-cvsroot co 2003/SendSignal