【问题标题】:ActiveMq messaging between Windows and Linux apps using Virtualbox on same PC not working在同一台 PC 上使用 Virtualbox 的 Windows 和 Linux 应用程序之间的 ActiveMq 消息传递不起作用
【发布时间】:2015-04-08 13:52:52
【问题描述】:

我们正在使用 Active MQ 让应用程序相互发送消息。我们有在 Windows 和 Linux 上运行的应用程序。在开发过程中,该团队将他们的 Windows PC 与带有 RHEL Linux 映像的 VirtualBox 一起使用。我们正在尝试在 Linux 本地 VM 上运行 Active MQ 代理。当我们这样做时,来自 Windows 的消息将无法使用它。如果我们在 Windows 上运行代理,Windows 应用程序可以相互发送消息,但 Linux 应用程序不能。

我曾尝试在 VB 中为 61616 设置端口转发(尽管来宾端口应该是什么?),但这似乎并没有做到。我转发了 jetty.xml 中列出的 8161,并且能够将我的 Windows 浏览器连接到它。

我在 Windows 中收到的异常文本是“频道太长时间处于非活动状态”。我尝试将双方的 maxInactivityDuration 设置为 0,但这并没有做到。

关于如何让这个设置发挥作用的任何想法?

【问题讨论】:

    标签: linux windows jms activemq virtualbox


    【解决方案1】:

    我刚刚发现一篇关于 VirtualBox 端口转发的帖子对我有帮助。 (是的,在今天早上发布我的问题之前,我昨天已经疯狂地搜索了 :) Virtualbox "port forward" from Guest to Host

    我按照帖子的“网络通信主机 -> 访客”部分所述设置端口转发。然后我更新了我的 activemq.xml 文件...

    <transportConnectors>
        <transportConnector ... uri="[my VM guest IP which was 10.0.2.15]:61616..." ... />     
    </transportConnectors>
    

    我仍然必须在 transportConnector 的 uri 字符串中设置 wireFormat.maxInactivityDuration,否则我会立即收到“通道长时间处于非活动状态”。我不知道为什么。无论如何,这比我昨天更进一步。

    【讨论】:

      猜你喜欢
      • 2021-11-28
      • 2014-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-10
      • 2012-03-02
      • 1970-01-01
      相关资源
      最近更新 更多