1

我的 Java 程序在 VMWare-Windows-Server 上运行,它连接到 SOA 总线并从DurableSubscriber. 它运行了 2 年没有问题。

自上周以来,它无法收到任何消息。在调试模式下(连同服务器端),我们发现了问题。如果消息“太大”,则连接断开。我们试过7MB,没问题,12MB失败。普通消息只有大约2KB

未找到错误消息。

我们的假设是:

  1. 堆大小
  2. 暂停

但我真的不知道如何解决它们。有人可以帮我吗?谢谢!

这里有一些代码:

TopicConnectionFactory factory = (TopicConnectionFactory) context.lookup(Topic_Access_Params.getChild("JNDI_Name").getText());

TopicConnection conn = factory.createTopicConnection(
                    Topic_Access_Params.getChild("Security_Principal").getText(), Topic_Access_Params.getChild("Security_Credentials").getText());

TopicSession session = conn.createTopicSession(false, Session.CLIENT_ACKNOWLEDGE);

Topic topic = (Topic) context.lookup(Topic_Access_Params.getChild("Topicname").getText());

TopicSubscriber subscriber = session.createDurableSubscriber(topic, Topic_Access_Params.getChild("Durable_Subscr_Name").getText());

MessageHandler handler = new MessageHandler(saxHandler);

subscriber.setMessageListener(handler);

conn.start();
4

0 回答 0