EJB Web 服务在 Websphere 中首次调用期间挂起
我有一个自上而下的 EJB Web 服务(部署在 Websphere 6.01 上),在启动 JVM 后第一次调用它时该服务挂起。如果我看到日志,它似乎会正常执行我期望的所有操作(从数据库检索数据),并且我会看到所有系统输出都打印到 EJB 方法中的最后一条语句。但客户端永远不会收到响应并最终超时。在控制脱离 EJB 后,容器(或 WS 路由器应用程序)中发生了一些事情,但我不知道如何进一步排除故障。如果它与启动有关,我会在服务调用开始时看到速度变慢,而不是在结束时变慢。
从第二次通话开始,一切正常。任何建议将不胜感激。
I have a top-down EJB Webservice (deployed on Websphere 6.01) that hangs the first time I call it after starting the JVM. If I see the logs, it seems to do everything normal that I expect it to (retrieving data from database) and I see all sysouts printed till the very last statement in EJB method. But client never gets the response back and eventually times out. Something is going on in the container (or in WS router application) after the control goes out of EJB but I don’t know how to troubleshoot it further. If it had something to do with startup, I would see slow down in the beginning of service invocation, not at the end.
From second call onwards it all works normal. Any suggestions would be appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
两个可能的方向:
1)。尝试删除 EJB 的所有实现,没有数据库调用,没有任何作用。看看您是否仍然遇到问题。如果您不这样做,那么您的代码中可能会发生一些有趣的事情。如果这样做,那么基础设施中就会发生一些奇怪的事情 - 可能是 PMR 时间。
2)。 WebSphere 有大量可以打开的跟踪。尝试启用与 Web 容器相关的跟踪。这可能会让您看到问题出在哪里。
无论如何,我建议开设 PMR。
Two possibile directions:
1). Try stubbing out all the implementation of the EJB, no database calls, no work. See whether you still get the problem. If you don't, then presumably something interesting is happening in your code. If you do, then there's something weird happening in the infrastructure - probably PMR time.
2). WebSphere has plenty of trace you can turn on. Try enabling trace relating to Web container. This may let you see where it's getting stuck.
I would recommend opening a PMR anyway.