问题标签 [apollo]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6037 浏览

java - ApacheActiveMQ 和 ApacheActiveMQApollo 的区别

Apache ActiveMQ 和 Apache ActiveMQ Apollo 有什么区别?

Apollo 文档说:“ActiveMQ Apollo 是一个更快、更可靠、更易于维护的消息传递代理,它建立在原始 ActiveMQ 的基础之上。它使用完全不同的线程和消息调度架构来实现这一点。”,但没有 java 示例代码和良好的用户指南。

有人在现场环境中使用 ApacheActiveMQApollo 吗?比原来的 ActiveMQ 性能更好?

0 投票
2 回答
537 浏览

jms - ActiveMQ Apollo 是否实现了 JMSXUserID 或类似的东西来帮助跟踪经过身份验证的用户?

我知道 ActiveMQ 支持 JMSXUserID 属性:

http://activemq.apache.org/jmsxuserid.html

我正在尝试使用 Apollo(一个 ActiveMQ 子项目)而不是 ActiveMQ,目前我正试图找出在 Apollo 中复制相同的行为。

我对机制并不挑剔,但简而言之,我需要一些方法来标记来自经过身份验证的用户的每条传入消息,并使用一个标识符让我知道哪个用户发送了哪个消息,但以一种用户无法欺骗的方式设置自己。这基本上正是 ActiveMQ 使用的 JMSXUserID,但我似乎无法弄清楚如何在 Apollo 中做同样的事情。

我错过了什么?

我发现这对谷歌来说特别困难,因为 ActiveMQ 在其每个页面上都链接到 Apollo,所以我的大部分搜索结果都没有帮助。

提前致谢。

0 投票
1 回答
1509 浏览

activemq - Apache ActiveMQ Apollo:虚拟主机停止

我在 Windows Server 2008 R2 上运行Apollo 1.3时遇到问题。我正在从 Web 应用程序(使用 stomp-php 的 PHP)发送 STOMP 消息,然后使用作为 Windows 服务运行的应用程序对其进行处理。这在一段时间内可以正常工作,但出乎意料的是,在向 Apollo 推送消息时出现以下错误:“虚拟主机已停止”。

Apollo 仍在运行,我什至可以从 Web 界面访问虚拟主机。让它再次运行的唯一方法(到目前为止我发现)是停止服务删除代理数据文件夹中的所有内容并再次启动服务。简单地重新启动服务是行不通的。

这是来自 apollo.log 的片段:

这些是我能找到的唯一例外。

我认为这是一个配置错误而不是代码问题,但这里是相关的代码片段:

我猜这是在虚拟主机处于非活动状态(即没有收到消息,没有连接)一段时间后触发的。因此,我正在考虑不时重新启动 apollo-broker 以防止触发它,但我不确定这是否真的是触发虚拟主机停止的原因。

谁能告诉我为什么虚拟主机突然停止以及我需要进行哪些配置更改以防止这种情况发生?我已经在文档中进行了搜索,但没有找到有关虚拟主机生命周期或类似内容的任何信息。

0 投票
1 回答
640 浏览

c# - Apollo Stomp ActiveMQ 创建无效的临时目的地名称

使用代理在 Windows 7 32 位上作为服务运行的 C# 框架 4.0,我在稳定版和开发版上都看到以下错误。

这样做的最终结果是我无法使用临时队列作为客户端上的调用阻塞,并且在我可以响应异常之前会话超时。

0 投票
1 回答
1151 浏览

activemq - ActiveMQ 到 Apollo 的过渡,Openwire 到 Stomp 协议配置

我正在尝试从 ActiveMQ 5.6 切换到 Apollo 1.5。我有两个软件正在交换消息,使用发布/订阅主题。

  • 第一个是 c++ 并使用带有 tcp 的 openwire
  • 第二个是 Javascript 并使用 stomp 和 websockets

使用 ActiveMQ 一切正常,我发送的消息可以在两个软件上读取和写入,此后我没有更改客户端。

现在,我从 c++ 软件(使用 openwire)发送消息,并尝试用 JS 软件读取它们,但我得到了错误。事实上,我收到带有标题内容类型的消息:“protocol/openwire”,但我期待 stomp。

这就是我配置 apollo.xml 连接器部分的方式:

我还尝试在 tcp 和 ws 连接器中使用 <detect />,它应该自动检测客户端协议,但也不起作用。

有人可以帮我解决这个问题吗?

谢谢,


编辑 :

我发现我确实收到了 stomp 协议消息,但它们的格式非常奇怪,甚至包含使 stomp.js 无法解析消息并正确填充消息正文的非文本字符。

这是从 activemq openwire 和 apollo openwire 收到的相同消息,使用相同的 c++ 发布者和 js 订阅者:

活跃的MQ

阿波罗

你认为这可能是阿波罗的问题吗?

0 投票
1 回答
152 浏览

apache-camel - 如何访问自定义 Camel 组件 (Apollo) 中的 InOut 行为

我正忙于使用 Scala 的 HawtDispatch Apollo 客户端库为 Apollo 开发 Camel 组件。我成功地从队列和主题发送和接收消息,但我不知道如何确定当前的生产者 (StompProducer) 需要 inOut 或 InOnly 行为。对于 InOut,如果没有提供明确的回复,我想订阅一个临时队列以获取结果。我在吠叫错误的树吗?有什么我可以看的例子吗?有人已经完成了 Apollo Stomp 组件吗?我曾尝试使用 ActiveMQ 组件绑定到 Apollo 1.5 中的 OpenWire 协议,但效果不佳。Camel 2.11-SNAPSHOT 中的 Sjms Camel 组件对我也不起作用。最终目标是为 Akka 提供 Apollo Consumer/Producers Actors。任何有关 Camel Apollo 集成替代方案或我自己尝试组件工作的建议,将不胜感激。问候伊恩

0 投票
3 回答
1176 浏览

.net - 带有 .NET 的 apache apollo mq

我需要在我的 ASP.NET MVC 应用程序中使用队列。我正在寻找最快的实现,谷歌一点,查看一些基准,发现目前 Apache Apollo MQ 是跨消息队列的最快解决方案。

是否存在一些客户端库,允许在 .NET 世界中使用 Apache ApolloMQ(发送和消费消息)?


此外,如果您可以向我提供其他解决方案(不包括 0MQ)表现出更好性能的基准,请向我提供链接。

0 投票
1 回答
484 浏览

php - 阿波罗 activemq ack

嗨,我使用 Apollo Activemq Broker 和 Stomp。
我编写了两种方法,一种用于将消息发送到代理,另一种用于从队列中读取消息。
当我向 borker 发送一条消息然后我阅读它时,一切正常,我可以阅读并确认消息,当我多次运行发送消息并且队列中有很多消息时,我的问题出现了,当我尝试每次我只收到来自队列的第一条消息时阅读并确认消息。另外,如果我运行一个循环“

一切正常,我可以阅读并确认队列中的所有消息。

更新:当从 PHP 接收到 ack 时,ActiveMQ 不会从队列中删除消息。Ack 返回 true 但消息仍在队列中。

更新:我的问题似乎是“prefetchSize”,默认值为 1000,我想将其设置为 1,我使用 stomp 与经纪人交互,请给我一个提示,如果我将该值从 1000 更改为 1。

0 投票
2 回答
1053 浏览

mqtt - 消息未保留在 Apollo 服务器中

我使用 fusesource 代码将 mqtt 消息发布到 Apollo 服务器时遇到问题。我用如下代码编写了消息发布者

我还编写了订阅该主题的消息消费者。如果我先启动消费者,再启动发布者,消费者可以正确获取所有消息。但是,如果我先启动发布者再启动消费者,消费者将不会收到消息。另外,我进入了 Apollo 管理控制台,在队列中找不到任何消息。(请参阅随附的屏幕截图)。

我应该怎么做才能解决这个问题?我不能让我的消费者一直运行,我不想丢失来自发布者的任何消息。当消费者离线时,代理(Apollo)不应该保留所有消息吗?如果是,我怎么看不到?

这似乎是一个愚蠢的问题,但我对 MQTT 很陌生,我确实需要一些帮助。

0 投票
2 回答
365 浏览

activemq - 严重困惑:ActiveMQ 是否放弃了对连接池的支持?

我是 ActiveMQ 的新手(我们使用 Apollo 作为代理)。我读到的所有内容都说使用 org.apache.activemq.pool.PooledConnectionFactory 作为连接池,除了 activemq-all-5.5.0.jar 中不存在该类。根据 jarfinder.com,该类仅存在于旧版本的 ActiveMQ 中。

我必须包括 Spring 或其他东西吗?一池连接如何?

谢谢