由于 JMS 目的地,从 NetBeans 11.3 到 Payara4/5 的部署缓慢?
Slow deployment from NetBeans 11.3 to Payara4/5 due to JMS destination?
这个问题是关于使用 NetBeans/Payara 开发 J2EE 的。
自从使用 NetBeans 11.3 以来,将我的 EAR-Project 部署到 payara 真的很慢。
问题:
我的 EJB 模块中有大约 20 个消息驱动的 bean,每个
其中之一以下输出写入控制台
部署期间:
End point determines destination name, Res name: javax.jms.Queue, JNDI name: java:global/jms/<queuename>
descriptor name : <MDB-Name>|#]
这对我来说没问题,如果不是每次出现这样的行都需要几秒钟才能
部署继续进行,因此部署持续时间约为 120 秒。应该是10s左右。
设置:
在 NetBeans 8.2 和 payara 4 中。1.x没问题。
然后我升级到 NetBeans 11.3 -> 行为缓慢。
然后我升级到 payara 5.201 -> 在那里它像 charme 一样工作了几次,但第二天:
再次,非常缓慢的部署。我真的不知道为什么。
运行 在 Win 10 上,JDK 1.8
消息被推入队列,如:
@Stateless
public class MyMessageSource {
@Inject
JMSContext context;
@Resource(mappedName = "java:module/jms/customeredited")
private Queue customerEdited;
...
private void sendToJMSQueue(Serializable container, Queue queue) {
context.createProducer().send(queue, container);
}
}
MDB 看起来像:
@JMSDestinationDefinition(name = "java:module/jms/customeredited",
interfaceName = "javax.jms.Queue",
resourceAdapter = "jmsra",
destinationName = "customeredited")
@MessageDriven(mappedName = "java:module/jms/customeredited")
public class CustomerEditedHandler implements MessageListener {
@EJB //Also tried @Inject
private SomeService ...;
public CustomerEditedHandler() {
}
@Override
public void onMessage(Message message) {
//...do things...
}
我尝试了项目属性中的一些设置,例如在构建 -> 编译中。
我尝试了@JMSDestinationDefinition、@MessageDriven 和 in 的不同配置
我在 Internet 上找到了 MyMessageSource,但没有任何帮助。
我还尝试通过@Inject 替换@EJB。
有人对我有什么想法或建议吗?
如果您需要更多信息,请告诉我!
此致,
斯特凡
我自己解决了这个问题。
如果有人关心问题出在哪里:
这不是 NetBeans、Payara 或 J2EE 的问题。
这是由于我使用的与我们公司的 VPN 连接造成的,因此我可以在家办公。
我猜想服务器在 Internet 上绕了个弯,然后又回来,注意到本地计算机上的端口 7676 (JMS-Port) 运行。
天哪。
现在我必须找到解决方法...
此致,
斯特凡
这个问题是关于使用 NetBeans/Payara 开发 J2EE 的。
自从使用 NetBeans 11.3 以来,将我的 EAR-Project 部署到 payara 真的很慢。
问题:
我的 EJB 模块中有大约 20 个消息驱动的 bean,每个 其中之一以下输出写入控制台 部署期间:
End point determines destination name, Res name: javax.jms.Queue, JNDI name: java:global/jms/<queuename>
descriptor name : <MDB-Name>|#]
这对我来说没问题,如果不是每次出现这样的行都需要几秒钟才能 部署继续进行,因此部署持续时间约为 120 秒。应该是10s左右。
设置:
在 NetBeans 8.2 和 payara 4 中。1.x没问题。
然后我升级到 NetBeans 11.3 -> 行为缓慢。
然后我升级到 payara 5.201 -> 在那里它像 charme 一样工作了几次,但第二天: 再次,非常缓慢的部署。我真的不知道为什么。
运行 在 Win 10 上,JDK 1.8
消息被推入队列,如:
@Stateless
public class MyMessageSource {
@Inject
JMSContext context;
@Resource(mappedName = "java:module/jms/customeredited")
private Queue customerEdited;
...
private void sendToJMSQueue(Serializable container, Queue queue) {
context.createProducer().send(queue, container);
}
}
MDB 看起来像:
@JMSDestinationDefinition(name = "java:module/jms/customeredited",
interfaceName = "javax.jms.Queue",
resourceAdapter = "jmsra",
destinationName = "customeredited")
@MessageDriven(mappedName = "java:module/jms/customeredited")
public class CustomerEditedHandler implements MessageListener {
@EJB //Also tried @Inject
private SomeService ...;
public CustomerEditedHandler() {
}
@Override
public void onMessage(Message message) {
//...do things...
}
我尝试了项目属性中的一些设置,例如在构建 -> 编译中。
我尝试了@JMSDestinationDefinition、@MessageDriven 和 in 的不同配置 我在 Internet 上找到了 MyMessageSource,但没有任何帮助。
我还尝试通过@Inject 替换@EJB。
有人对我有什么想法或建议吗?
如果您需要更多信息,请告诉我!
此致, 斯特凡
我自己解决了这个问题。 如果有人关心问题出在哪里:
这不是 NetBeans、Payara 或 J2EE 的问题。 这是由于我使用的与我们公司的 VPN 连接造成的,因此我可以在家办公。 我猜想服务器在 Internet 上绕了个弯,然后又回来,注意到本地计算机上的端口 7676 (JMS-Port) 运行。
天哪。
现在我必须找到解决方法...
此致, 斯特凡