【问题标题】:Can any queuing system trigger external Applications任何排队系统都可以触发外部应用程序吗
【发布时间】:2013-09-07 16:43:45
【问题描述】:

现在我们有一个存储消息的队列系统(activemq)。我们编写了一个单独的 java 应用程序,它将读取队列,然后触发一个 exe 进行一些处理。但是我们想取消这个链接我们的activemq和exe的额外应用程序。所以我想知道是否有任何排队系统包含一个代码,它可以帮助我运行 exe,而无需我编写任何额外的代码。

任何关于哪个排队系统可以让我完成这项工作的意见将不胜感激。

【问题讨论】:

  • 您的实际需求是什么?这个问题非常不具体。
  • @hugh 请查看修改后的查询。我希望这次我更具体
  • 好的,这更容易理解。但是,不幸的是,我想不出任何方法可以与我熟悉的排队平台一起使用
  • 您将如何与此代码交互?您是否正在寻找一种在某处添加 exe 的方法?

标签: rabbitmq activemq msmq message-queue zeromq


【解决方案1】:

IBM MQ 的触发功能怎么样?

WebSphere MQ 提供了一项功能,当有消息可从队列中检索时,该功能使应用程序或通道能够自动启动。将消息放入定义为已触发的队列中。如果满足一系列条件,队列管理器将触发消息发送到启动队列。

https://www.ibm.com/support/knowledgecenter/en/SSFKSJ_9.0.0/com.ibm.mq.dev.doc/q026940_.htm

【讨论】:

    【解决方案2】:

    为您提供一些附加信息... IBM Websphere MQ 通过作为服务(在 Windows 实现中)或守护程序(在 UNixish 实现中)运行的 Trigger Monitor 应用程序原生支持触发式应用程序。

    当消息到达队列时,MQ 软件将生成另一条消息(“Trigger”消息并将其发送到“Trigger”队列,该队列由 Trigger Manager 应用程序监控。应用程序然后启动所需的应用程序.

    因此,您对“启动应用程序的应用程序”的实现一点也不奇怪。IBM 在他们的实现中做到了。我认为您的实现没有任何问题,如果您可以将其更紧密地集成到 activeMQ,那么您就是赢家。

    【讨论】:

      【解决方案3】:

      所以你只需要一些东西来在消息到达时启动一个 EXE 吗?

      Message Queuing Triggers

      【讨论】:

        【解决方案4】:

        如果您想要更多的“推送”解决方案,而不是生产者-消费者解决方案(听起来像您),您可以考虑使用 WebSockets。这将是另一种处理消息的方式。

        正如其他人所说,如果您不想使用一些额外的中间件来提供异步通信,那么使用消息代理似乎不是您想要的解决方案。

        【讨论】:

          【解决方案5】:

          这并不是 Message Brokers 的真正工作方式。但是,您可以在自己的应用程序中嵌入代理或创建代理插件来执行某些操作。最后,尽管最好的方法是创建您自己的客户端,该客户端可以实现您的业务逻辑,并让 Message Broker 完成其设计的工作,路由消息流量。

          【讨论】:

          • 你能告诉我,每个人都使用sender,consumer的话。这意味着发送者,消费者是另一个程序(如使用JMS的Java程序)。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-01-15
          • 1970-01-01
          • 1970-01-01
          • 2011-08-22
          • 1970-01-01
          • 2019-11-15
          相关资源
          最近更新 更多