【问题标题】:JADE IPMS Inter-Platform Agent MigrationJADE IPMS 跨平台代理迁移
【发布时间】:2011-12-27 09:19:52
【问题描述】:

我正在使用 IPMS 和 Jade 进行跨平台代理迁移。我正在使用 Jade 3.6 和 IPMS 1.2。我已经在 slave1(原始平台)和 slave2(目标平台)上启用了服务。在两个平台上也设置了-accept-foreign-agents true 选项。我也增加了超时设置。迁移代码如下:

AID remoteAMS = new AID("ams@slave2:1099/JADE", AID.ISGUID);
remoteAMS.addAddresses("http://slave2:7778/acc");
PlatformID destination = new PlatformID(remoteAMS);
agent.doMove(destination);

我只是在 slave1 上超时,但在启用详细日志记录后,我在 slave2 上收到以下错误:

WARNING: FAILURE-ams-9 - Receiver does not exist.
jade.core.NotFoundException: getContainerID() failed to find agent ams@slave1
    at jade.core.MainContainerImpl.getContainerID(MainContainerImpl.java:1318)
    at jade.core.messaging.MessagingService.deliverInLocalPlatfrom(MessagingService.java:1255)
    at jade.core.messaging.MessagingService.deliverNow(MessagingService.java:1187)
    at jade.core.messaging.MessageManager$Deliverer.run(MessageManager.java:152)
    at java.lang.Thread.run(Thread.java:662)

关于如何调试的任何提示?

【问题讨论】:

    标签: agents agents-jade


    【解决方案1】:

    这个问题是由于没有在平台上设置正确的主机名造成的。 JADE 需要能够将 127.0.0.1 解析为主机上的“slave1”和目标平台上的“slave2”。为了解决这个问题,我编辑了我的 /etc/hosts 文件并在两个系统上注释掉了 localhost:

    # 127.0.0.1     localhost 
    127.0.0.1       slave1 
    192.168.56.101  slave2
    

    slave2 也是如此。我在这里的详细教程中介绍了这个错误和其他一些错误:Agent Mobility with JADE and JIPMS

    【讨论】:

      【解决方案2】:

      这个问题也可能是由于在标准端口 1099 上运行 JADE 平台引起的,该端口也被 JAVA RMI 使用。当端口已被使用时,也会收到相同的错误。您还应该检查主机文件、两台计算机上的空闲端口号以及启动 JADE 平台的命令的参数是否输入正确。当然,如果允许您用于 JADE 平台的所需端口,请务必检查您的防火墙。

      但这是我安装插件并使其工作时的经验。

      【讨论】:

      • 欢迎来到 Stack Overflow!请不要在您的帖子中使用签名/标语。您的用户框算作您的签名,您可以使用您的个人资料发布您喜欢的任何关于您自己的信息。 FAQ on signatures/taglines
      【解决方案3】:

      通过将 Jade 4.3.0 与 IPMS 2.0 结合使用,您可以轻松迁移您的代理。您需要做的是将 amm 放入目的地的 remoteAMS AID 地址中,您想将代理移动到该地址。 像这样:

      AID remoteAMS = new AID("amm@slave2:1099/JADE", AID.ISGUID);
      remoteAMS.addAddresses("http://slave2:7778/acc");
      
      PlatformID destination = new PlatformID(remoteAMS);
      agent.doMove(destination);
      

      【讨论】:

        猜你喜欢
        • 2012-11-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-25
        • 2010-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多