问题标签 [rabbitmq-exchange]
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.
java - RabbitMQ,话题交换
我的 RabbitMQ 上有一个主题交换。发送消息时出错。
接收部分:
发送部分:
在线错误:channel.exchangeDeclare(EXCHANGE_NAME, "topic");
异常:无法在 vhost '/' 中使用不同类型、持久、内部或自动删除值重新声明交换 'EX_TEST',class-id=40,method-id=10
如何解决这个问题?谢谢你 :D
c# - 如何删除 RabbitMQ 交换?
这似乎是一个非常基本的操作,但我找不到在 RabbitMQ 中删除命名交换的方法。我在 Windows 上运行它并使用命令行工具。在这一点上,如果存在交换,我将满足于 .NET API 调用来删除交换。谢谢你。
rabbitmq - RabbitMQ 镜像队列和交换
是否可以使用联邦或铲子将一台服务器上的交换和队列的创建镜像到另一台服务器?
我见过的所有使用铲子和联邦的例子都使用服务器上已经存在的交换和队列。我想要做的是在服务器 A 上创建一个交换,并在服务器 B 上重新创建一个联合或铲子,然后开始向它发送消息。
如果这不能通过联合或铲子完成,那么无论如何都可以在不使用集群的情况下实现这一点,那么两台服务器之间的连接是不一致的,因此集群是不可能的。
我在 Windows 上运行 RabbitMQ。
rabbitmq - RabbitMQ 在开始时声明交换
首次安装/启动 RabbitMQ 时是否可以声明交换?
在任何生产者向消费者生产任何东西之前,我需要明确声明消费者可以绑定的一些持久交换。
可以用 rabbitmq.config 或其他自动措施来完成吗?
谢谢
php - 与 RabbitMQ 的主题交换歧义
我有点困惑。我正在尝试实施主题交换,但不确定需要什么。
我想要几个路由键和 1 个主题交换(默认 amq.topic)。我的钥匙是这样的:
- customer.appA.created
- customer.appB.created
- 客户.*.created
我希望我的队列是持久的,但我需要 1 个“客户”队列还是 appA 和 appB 的 2 个队列?我已经弄清楚了我的出版商;连接,交换声明,基本发布。
但我正在与消费者斗争。假设我要打开 3 个控制台,每个控制台对应上述路由键。
我当前的消费者有:连接、交换声明、队列绑定、基本消费。这些连接到一个持久的“客户”队列。但是,我的消息被轮询到每个控制台/消费者,而不是使用路由键。
所以我的问题;
- 对于典型的主题交换设置;你需要多少个队列?
- 我的消费者可以只使用交换绑定,还是必须包括队列交互?
- 一条消息是否可以通过主题交换出现在 2 个消费者中(或者您是否需要为此进行扇出)?
java - 存在交换问题的 RabbitMQ RPC
所以我一直在关注本教程:http ://www.rabbitmq.com/tutorials/tutorial-six-java.html ,但我无法让它与直接交换一起使用。
有人可以通过修改代码来帮助我,以便它与直接交换一起使用。
我的目标:用户可以选择要发送到哪台机器,当他们选择我想绑定到那台机器并将其发送到那台机器时。但是当我将队列声明更改为交换声明时,它似乎不起作用。任何帮助将不胜感激!!!
谢谢
c# - 为什么要在 RabbitMQ 中声明 Exchange?
我正在使用 RabbitMQ 开展一个项目。我的代码如下。
制片人:
Exchange 的消费者声明:
没有交易所的消费者声明:
两种消费者代码都运行良好,那么声明交换的主要用途是什么?我很困惑。谁能澄清一下?
rabbitmq - RabbitMQ 从终端声明交换 - 拒绝访问:/api/exchanges/
我正在使用 rabbitmq 为我正在处理的企业应用程序处理我的数据库之间的消息。作为该过程的一部分,我正在尝试帮助自动化服务器的设置(例如编写脚本)。在这个过程中,我尝试使用rabbitmqadmin
从命令提示符声明交换。我有 2 台不同的服务器正在运行CentOS 5.x
,CentOS 6.x
并且两者都有相同的问题。
到目前为止,我声明了一个管理员用户并设置了它的密码,然后我将它的标签设置为管理员标签,然后我确保它具有对虚拟主机的权限。之后,我尝试使用指定的用户名和密码声明交换,但它失败了。
对于 CentOS 5.x 框,我必须使用python26 rabbitmqadmin
而不是 just rabbitmqadmin
,但得到相同的结果。
最后一条命令导致:
我的 CentOS 5.x 和 Cent 6.x 机器都运行 rabbitmq 3.3.5。关于我遗漏的任何想法或关于如何获得更多错误信息的想法(例如错误日志文件或获得更详细输出的方法)?
php - RabbitMQ PHP 用于动态消息更新
我正在学习 RabbitMQ,并考虑使用它为用户提供“动态消息”更新,就像 facebook 提供来自朋友的动态消息一样。
我的想法是:
每当创建用户时,我将创建一个名称为用户的 userId 的队列,因此队列名称可以是“
100_message_queue
”(userId_message_queue)。生产者将推送此队列中的所有更新。
从客户端(javascript),它将调用像 "
GET http://example.com/getliveupdates/100
" 这样的 REST API,然后我将从中获取所有新更新100_message_queue
并将其作为响应发送。
我阅读了 RabbitMQ php 教程,但无法弄清楚这怎么可能?此外,消费者永远运行,所以我似乎无法发出任何 REST 请求。它给了我超时。
知道如何实现这种结构吗?
谢谢
rabbitmq - 过期消息传递序列 RabbitMQ
我们正在构建一个解决方案,将消息发布到超时队列。在 TTL 到期后,消息被推送到主队列进行重新处理。
我们正在设置计数器值,以便为 x 号尝试消息。重新交付的次数。
解决方案工作正常。但是场景是当头部位置最高的消息 TTL 没有过期时,其他较低过期的消息不会被重新发布(到主队列)。
这种理解正确吗?如果是,那么解决方案是让每条消息在 TTL 之后重新处理。
欣赏答案/观点。
谢谢。