问题标签 [amqp]
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.
.net - 等待一条带有超时的 RabbitMQ 消息
我想向 RabbitMQ 服务器发送一条消息,然后等待回复消息(在“回复”队列上)。当然,我不想永远等待,以防处理这些消息的应用程序出现故障 - 需要超时。这听起来像是一项非常基本的任务,但我找不到这样做的方法。我现在在py-amqplib和RabbitMQ .NET 客户端都遇到了这个问题。
到目前为止我得到的最好的解决方案是使用中间进行轮询basic_get
,sleep
但这很丑陋:
当然有更好的方法吗?
ruby-on-rails - Rails 应用程序中的 AMQP 订阅者
是否可以使用我的 Rails 应用程序启动 AMQP 订阅者?可能通过初始化程序或其他方式。
我想让它同时运行,也可以与 Rails 模型交互。下面是我的意思的伪代码示例。
ruby - 是否有用于在 RabbitMQ 上列出队列和交换的 API?
我已经看了很多,但我还没有找到一种好的编程方式来列出 RabbitMQ 服务器上的队列。
这很重要,因为当我完成队列和交换时,我需要清理它们。我并不总是有一个很好的“完成”事件可以用来触发清理,所以我想用更多的垃圾收集模型来做。如果我可以列出队列,我可以验证与它们相关的对象不应该产生更多条目并清理它们。
我知道我可以用rabbitmqctl
它来做,但这需要提升权限。
由于我无法找到以编程方式列出队列的方法,因此我一直在数据库中保留一个名称列表。这行得通,但它很丑。
c# - 用于 C# 和 Java EDA 的 Apache Camel ESB
我们正在考虑使用事件驱动架构 (EDA) 集成我们的一些粗粒度业务服务,并且这些服务的服务器端 (REST) 是在 Java 和 .NET (C#) 中实现的。我们最初认为使用 RabbitMQ(和 AMQP 协议)作为中立和开放的手段(这两种语言具有良好的客户端支持),但这意味着必须支持 Java 和 CLR 旁边的另一个运行时(Erlang)。我们还在研究 Apache qPid,因为它具有 AMQP 协议的 Java 代理实现,可能会消除这种担忧。
有没有人尝试在 ActiveMQ 之上使用更丰富的 Apache Camel ESB 以 Pub-Sub EDA 方式集成 Java 和 .NET 服务?我是否错过了有关通过此路线的任何其他可能的建议?
谢谢
xmpp - 为什么我不应该将 couchdb 用于消息传递或实时活动流?
虽然使用 ampq 或 xmpp(可能有 couchdb 作为后端的rabbitmq 或 ejabbered)似乎很适合在更新小但频繁的社交游戏平台中提供有关朋友状态的实时更新,但我不禁想到为什么不couchdb 不是提供此类更新的好平台吗?
我能想到的主要优点是它能够根据朋友和更改 API 的可用性过滤更新,这使得开发这样的应用程序和管理它(包括复制)与你必须考虑如何管理 pubsub 节点以及在任何时间点订阅它们的人。
但是,我不禁认为这太好了,我无法找到有关 couchdb 缺点的信息。不知何故,感觉就像使用 MySQL 进行消息传递,这就是我犹豫使用它的原因。
任何人都有将 couchdb 用于此类应用程序的经验吗?您会推荐其他平台使用吗?
ruby - Ruby AMQP 未初始化常量错误
我正在尝试这段代码(来自这里的在线文章:http ://www.randomhacks.net/articles/2009/05/08/chat-client-ruby-amqp-eventmachine-shoes )
但最终出现以下错误:
之后,我在我的开发环境中使用 AMQP 尝试了不同的示例代码,但都显示了该错误。所以问题不在于代码,而在于我的开发环境。谁能指出我的开发环境的问题。提前致谢。
php - 对于基于浏览器的实时游戏,我应该选择 AMQP 还是 XMPP 哪一个?
我在 AMQP (RabbitMQ) 与 XMPP (eJabberd) 之间进行选择,用于我的基于浏览器的无闪存 javascript 驱动的实时回合制游戏。我不太了解 AMQP 和 XMPP 协议。我想使用 PHP 进行用户授权,并使用 MySQL 进行一些数据存储检索。据我所知,RabbitMQ 有 PHP 客户端,但 eJabberd 没有。
我的理解是javascript客户端调用PHP脚本并操作必要的处理,然后传递给AMQP或XMPP服务器将数据传递给对手玩家。Wrox 有一本好书“Pro XMPP Programming with JS and jQuery”,但没有关于 PHP 的示例。所以以下是我的问题。
1) 哪种协议适合我的游戏?
2) 我是否应该仅仅因为它的 PHP 客户端支持而选择 RabbitMQ?
java - Java JMS 消息传递
我有一个将消息发送到服务器和服务器通过 qpid 消息接收它的工作示例。这是发送到服务器的简单 hello world :
这是接收请求并发送响应的服务器(当前客户端未收到响应):
这是我的属性文件:
它们都工作得很好,我可以通过 Qpid JMX 管理控制台看到 qpid 队列中的消息。这些示例是从https://svn.apache.org/repos/asf/qpid/trunk/qpid/java/client/example下载的(可能也有人需要它)。
我之前使用 spring 完成了 Jboss 消息传递,但我无法用 qpid 做同样的事情。在 applicationsContext 中使用 jboss,我有 bean jndiTemplate、conectionFactory、destinationQueue 和 jmscontainer,如下所示:
当然还有发送者和监听者:
现在我想使用 spring 上下文逻辑重写这个 qpid 示例。谁能帮我?
shell - 检查消息 apache Qpid
是否可以从 unix/windows 控制台检查来自 Qpid 队列的消息?
这是我通过 GUI 进行检查的方法:
http://i47.tinypic.com/pbu5d.gif
我可以看到来自 Qpid JMX 管理控制台的所有信息,有没有可以在控制台中使用的类似的东西?
python - Comet 用于消息队列上基于用户的通知
我们尝试构建应该使用 Comet (AJAX Push) 向个人用户发送通知的应用程序。大多数通知的超时时间都很短。
当我们运行 RabbitMQ 时,通过 AMQP 发送消息是最简单的。我想知道解决单个用户的最佳方法是什么,以便 Comet 服务器和队列服务器都可以轻松完成工作。
我研究了许多解决方案,包括将 Carrot与 Orbited、Tornado 等一起使用。
如果彗星服务器为每个用户注册一个消费者(使用队列),那么这些消费者要么必须保持超时,要么在每次使用后被丢弃。这两种解决方案似乎都不是很有希望。我想在 Tornado/Carrot 中可能会有这样的事情:
或者,comet 服务器只能有一个队列消费者,并且必须实现自己的轻量级消息队列,该队列可以缓存传入的通知,直到用户连接并使用它们。这似乎是 memcached 可能有用的东西,但我没有这方面的经验。
这里最好的方法是什么?