【问题标题】:Lightweight JMS broker轻量级 JMS 代理
【发布时间】:2011-01-31 05:47:21
【问题描述】:

我正在寻找一种小型且足够高效的轻量级 JMS 代理解决方案,它没有依赖关系或依赖最少。我的消息传递代码应该在有很多我无法控制的依赖项的环境中运行。因此,将 ActiveMQ 解决方案与我的自定义类一起部署会很荒谬。

【问题讨论】:

  • 所以你没有发言权来决定你的代码是否可以依赖于activemq类?
  • 我不太明白你的问题

标签: java jms messaging


【解决方案1】:

目前我正在调查FFMQ 解决方案。它是开源的(GNU LGPL 许可证),只有 4 个依赖项(commons-logging、log4j、jms 和 jmx),并且已经足够成熟,可以实现我的目标。

【讨论】:

  • 是否有任何关于如何通过 FFMQ 创建的队列发送和接收消息的指针。我用谷歌搜索了它,但从未找到。
  • 我喜欢小项目 :) 有 FFMQ 通用有线协议,不仅可以与 java 集成?
【解决方案2】:

但是ActiveMQ分布很大,可以压缩到几个jar全部3MB左右

【讨论】:

    【解决方案3】:

    如果JMS 不是硬性要求,并且您只是在寻找消息/事件系统,则应该查看 Java EE 6 事件:

    http://java.dzone.com/articles/java-ee6-events-lightweight

    【讨论】:

      【解决方案4】:

      我假设您正在为 JMS 提供者寻找轻量级解决方案并且不想使用(EMS、Apache 等)但仍需要使用 JMS。

      看看Building a Lightweight JMS Provider可能就是你需要的。

      【讨论】:

      • 如果有人有 2015 年关于轻量级 JMS 的教程我会很高兴
      【解决方案5】:

      特别是如果您使用的是 spring,请不要将 activemq 排除在外。您也可以将它作为嵌入式服务器运行,它并不是真正的重量级。

      看看: http://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html

      【讨论】:

      • 我的代码在健康的服务器环境中运行,具有一组固定的依赖项。将 Spring 容器与 ActiveMQ 代理一起使用会损害服务器(可能会覆盖依赖项、可能的类加载问题等)。所以我首先排除了这种繁重的解决方案
      • 你不一定非得在这个配置中使用spring。您可以完全从 java 启动嵌入式代理。就其本身而言,activemq 没有很多外部依赖项。也就是说,我理解你所说的尽量保持轻量级的意思。
      • 我一开始尝试部署 ActiveMQ,但是它已经使我的服务器的生态系统崩溃了。事实证明它有足够的依赖关系来打破它))
      • 我尝试在其上安装 ActiveMQ 的每台 Solaris 服务器都在几天后崩溃,没有报告任何错误。
      猜你喜欢
      • 2016-07-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-10
      • 2014-04-23
      • 2011-07-18
      • 2013-08-01
      相关资源
      最近更新 更多