|警告 |传输连接到:tcp://ip:port 失败:org.apache.activemq.transport.InactivityIOException:

问题描述

| WARN  | Transport Connection to: tcp://ip:port Failed: org.apache.activemq.transport.InactivityIOException: Channel was inactive for too long | org.apache.activemq.broker.TransportConnection.Transport | AmqpInactivityMonitor Async Task: java.util.concurrent.ThreadPoolExecutor$Worker@7e641927[State = -1,empty queue]

我正在尝试从 java[publisher] 向活动 mq 发送一条消息,该信息已在活动 mq 中排队。 订阅代码是用 python 编写的[使用这个库 python-qpid-proton 0.31.0]。当没有请求发送到活动 mq 时,订阅者保持活动状态。但是当请求被发送到 active mq 时,“Active Durable Topic Subscribers”中的客户端在处理请求一段时间后进入“Offline Durable Topic Subscribers”。在 pycharm 中运行相同的代码时可以正常工作,但在 exe 上可以看到这个问题 python接收器代码如下所示:-

P1 = Receiver(url,subscriptionname)
        from proton.reactor import Container
        Container(P1).run()


class Receiver(MessagingHandler):
super(Receiver,self).__init__()
    def __init__(self,url,subscriptionname):
        self.url = Url(url)
        self.stopping = False
        self.messages_actually_received = 0
        self.subscriptionName = subscriptionname

    def on_start(self,event):
        durable = DurableSubscription()
        event.container.container_id = "client"
        connection = event.container.connect(self.url)
        event.container.create_receiver(connection,self.url.path,name=self.subscriptionName,options=durable)
        

     def on_message(self,event):
        if self.stopping:
            return
        
        self.messages_actually_received += 1
        if event.message.body == 'message':
               pass

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)