rabbitmq相关内容

将消息从 RabbitMQ 转换为 string/json

我目前正在努力解决一个相当简单的问题.我想接收来自 RabbitMQ 的消息并将其转换为字符串(或稍后的 json 对象).但我得到的只是字节. Message 对象以这种方式将自身显示为字符串 (Body:'{"cityId":644}'; ID:null; Content:application/json; Headers:{}; Exchange:; RoutingKey:pages ..
发布时间:2021-11-27 11:50:17 Java开发

使用 pika 发布消息时如何添加标题键:值对

我正在编写一个自动化测试来测试消费者.到目前为止,我不需要在发布消息时包含标题,但现在我需要.而且似乎缺少文档. 这是我的发布商: class RMQProducer(object):def __init__(self, host, exchange, routing_key):self.host = 主机self.exchange = 交换self.routing_key = routi ..
发布时间:2021-11-27 11:50:10 Python

AMQP 0-9-1 对 1-0

我正在为一个新项目寻找消息服务,该项目必须将一些 C# 应用程序与一些 Java 应用程序连接起来.我真的很喜欢 RabbitMQ,因为它似乎对这两种技术都有惊人的支持.我在 RabbitMQ 规范中看到,目前只提供了 AMQP 0-9-1 模型. 那是节目的终结者吗?我应该向提供 AMQP 1.0 的 ActiveMQ 发送地址吗? 感谢您的建议 解决方案 您的问题在官方 中 ..
发布时间:2021-11-27 11:50:00 其他开发

如何使用 cygwin/mingw 在 windows 上编译 PHP 扩展?

我正在尝试构建 RabbitMQ PHP 包装器 和 AMPQ PHP 包装器 在 Windows (64) 上使用 Cygwin.我已经成功构建了底层 C 库(librabbitmq.dll),但我被困在“phpize"步骤: phpize &&./configure --with-rabbit &&制作&&须藤制作安装 如果我理解正确,windows 上没有“phpize",那么我 ..
发布时间:2021-11-27 11:49:53 PHP

rabbitmq 队列上有多个消费者-只有一个消费者收到消息

我实现了多个消费者,他们从单个队列中获取消息,我使用类似于 这个例子,除了我在一个无限循环中执行 basic.get 以进行轮询. 知道如何防止所有消费者之间发生竞争,因为只有一个消费者会收到消息,而另一个消费者将继续进行轮询,直到另一条消息到来吗? 我尝试实现一个逻辑,在该逻辑中,一旦我收到消息,我就确认它以删除消息,但似乎其他一些队列在第一个队列确认并删除它之前设法获取了该消息.所以每 ..
发布时间:2021-11-27 11:49:46 Python

从多个队列中读取,RabbitMQ

我是 RabbitMQ 的新手.当有多个队列(要从中读取)时,我希望能够在不阻塞的情况下处理读取消息.关于我如何做到这一点的任何意见? //编辑1 公共类兔子:IMessageBus{私人列表publishQ = new List();私人列表subscribeQ = new List();ConnectionFactory 工厂 = null;IConnection 连接 = 空;IMo ..
发布时间:2021-11-27 11:49:15 C#/.NET

Celery 不释放内存

看起来celery在任务完成后没有释放内存.每完成一个任务,就会有 5m-10m 的内存泄漏.因此,如果有数千个任务,很快就会耗尽所有内存. BROKER_URL = 'amqp://user@localhost:5672/vhost'# CELERY_RESULT_BACKEND = 'amqp://user@localhost:5672/vhost'CELERY_IMPORTS = ('ta ..
发布时间:2021-11-27 11:49:06 Python

由于 SocketException,RabbitMQ 新连接被拒绝

尝试创建与在不同服务器上运行的 rabbitmq 的新连接时,出现以下错误: java.io.IOException在 com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:106)在 com.rabbitmq.client.impl.AMQChannel.wrap(AMQChannel.java:102)在 com.rabbitmq. ..
发布时间:2021-11-27 11:48:58 Java开发

在 FIFO 队列系统中,实现优先消息传递的最佳方式是什么?

对于不始终支持优先级消息的面向消息的中间件(例如 AMQP),当队列只有 FIFO 语义时,实现优先级消费的最佳方法是什么?一般用例是这样一种系统,其中当队列中存在大量消息积压时,消费者会在收到较低优先级消息之前收到较高优先级的消息. 解决方案 鉴于给定的单个队列仅支持 FIFO,您当然必须引入多个队列、中介或具有更复杂的消费者.> 可以通过多种方式处理多个队列.生产者和消费者可以同意在 ..
发布时间:2021-11-27 11:48:48 其他开发

RabbitMQ:默认的 x-message-ttl 值是多少

我在 RabbitMQ 文档中找不到安装时附带的默认 x-message-ttl 值. 我知道如何将其设置为所需的值,但我很想知道默认值. 解决方案 broker 端默认没有设置 x-message-ttl 参数,所以基本上你可以将默认值解释为无穷大. 如果您将没有 ttl 的消息发布到没有设置 ttl 的队列(是的,有每个消息和每个队列的 ttl 参数,请参见下面的注释): ..
发布时间:2021-11-27 11:48:39 其他开发

通过 PECL 安装 AMQP

我正在尝试安装 RabbitMQ PECL 扩展,但在运行之后 sudo pecl install amqp 我收到以下神秘的错误消息,大量的谷歌搜索没有帮助解决. 我安装了这些软件包: librabbitmq - RabbitMQ C 客户端本身) librabbitmq-dev - 开发标头等 和RabbitMQ在本地主机上成功运行 也许是 C 客户端的版本与 P ..
发布时间:2021-11-27 11:48:32 PHP

RabbitMQ 使用立即数和强制位

我正在使用 RabbitMQ 服务器. 为了发布消息,我将 immediate 字段设置为 true 并尝试发送 50,000 条消息.使用rabbitmqctl list_queues,我看到队列中的消息数零. 然后,我将 immediate 标志更改为 false 并再次尝试发送 50,000 条消息.使用 rabbitmqctl list_queues,我看到总共有 100,00 ..
发布时间:2021-11-27 11:48:25 其他开发

在 Web 应用程序中使用像 RabbitMQ 这样的消息传递?

我想了解像 RabbitMQ 这样的消息传递可以帮助消费者 Web 应用程序的场景/用例/是什么. 有什么具体的资源可以学习吗? 目前有哪些 Web 应用程序正在使用此类消息传递方案?如何使用? 解决方案 一般来说,消息总线(例如 RabbitMQ,但不限于)允许可靠的作业处理队列. 就网络应用程序而言,这对您来说意味着能够随着需求的增长扩展您的应用程序,并使您的 UI ..
发布时间:2021-11-27 11:48:04 其他开发

NServiceBus 相对于普通 RabbitMQ 的特定优势

与简单地使用 RabbitMQ 的 .net 驱动程序相比,使用 NServiceBus 有什么优势(假设我们可以用 AMQP 替换 MSMQ).NSB 是否提供了 AMQP 中无法直接提供的任何附加功能或抽象. 解决方案 主要优势包括(但不限于): 负责消息的序列化/反序列化. 为发送消息 w 提供了一个简洁的模型.处理程序、多态分派、在管道中安排处理程序等. 处理工作单元. ..
发布时间:2021-11-27 11:47:45 其他开发

如何在 RabbitMQ 中重新排队消息

消费者收到消息后,消费者/工人做一些验证,然后调用网络服务.在此阶段,如果发生任何错误或验证失败,我们希望将消息放回最初消费的队列. 我已阅读 RabbitMQ 文档.但是我对reject、nack和cancel方法之间的区别感到困惑. 解决方案 简短回答: 要重新排队特定消息,您可以选择 basic.reject 或 basic.nack 并将 multiple 标志设置为 ..
发布时间:2021-11-27 11:47:35 其他开发

为什么使用 AMQP/ZeroMQ/RabbitMQ

而不是编写自己的库. 我们正在这里开展一个项目,该项目将是一个自我分割的服务器池,如果一个部分变得太重,经理会将其分割并作为单独的进程放在另一台机器上.它还会提醒所有受此影响的已连接客户端连接到新服务器. 我很好奇使用 ZeroMQ 进行服务器间和进程间通信.我的伙伴更愿意自己动手​​.我期待社区来回答这个问题. 我自己是一个相当新手的程序员,刚刚了解了消息队列.正如我在谷歌上搜 ..
发布时间:2021-11-27 11:47:27 其他开发

在 ttl 之后,死信消息不会重新排队到原始队列

我计划通过以下两个链接来延迟队列中消息的处理 link1 link2.所以,正如链接中所建议的那样.我已经用 x-dead-letter-exchange 和 x-dead-letter-routing-key 参数声明了原始队列.当消息未能被消费者处理或 ttl 发生或队列长度超过时,它将消息发布到所谓的 dead-letter-queue.现在在 dead-letter-queue 中,类似的 ..
发布时间:2021-11-27 11:47:03 其他开发

RabbitMQ 主题交换:1 个交换 vs 多个交换

我有一个场景,我需要执行一系列流程,每个步骤都在独立的应用程序中完成和扩展.我正在使用主题交换进行所有交换.当前的拓扑是这样的: P -> X -> Q -> C/P -> X -> Q -> C 我们正在“版本控制"我们的队列以处理影响消息结构的可能的需求变化.绑定可能如下所示: step1.exchange 与 step1.v1.queue 绑定,key 为 step1.v1 ..
发布时间:2021-11-27 11:46:33 其他开发

怎么延迟?- php-amqplib

我想知道如何使用 Amqpphplib 延迟. 我使用了这个很棒的咖啡脚本教程: https://github.com/jamescarr/rabbitmq-scheduled-delivery 但它似乎不适用于 PHP-amqplib. 消息按我的意愿过期,但“x-dead-letter-exchange"似乎不起作用.我使用了 RabbitMQ 管理控制台,我看到了所有 ..
发布时间:2021-11-27 11:46:23 PHP