230得票4回答
RabbitMQ和通道与连接之间的关系

RabbitMQ Java客户端 有以下概念: Connection - 连接到 RabbitMQ 服务器实例 Channel - 发布和消费的结构,由打开的连接创建 Consumer线程池 - 用于从 RabbitMQ 服务器队列中消费消息的线程池 Queue - 按FIFO顺序保存消息...

224得票14回答
RabbitMQ / AMQP: 同一消息可以有多个消费者使用单个队列吗?

我刚开始使用RabbitMQ和AMQP。我有一堆消息需要排队我有多个消费者,希望对同一条消息执行不同的操作。RabbitMQ大部分文档似乎都集中在轮询上,即一个单独的消息被单个消费者消耗,负载在每个消费者之间分布。这确实是我观察到的行为。例如:生产者有一个单一的队列,并且每2秒发送一次消息:v...

154得票8回答
JMS和AMQP - RabbitMQ

我试图理解JMS及其与AMQP术语的关系。我知道JMS是一个API,而AMQP是一种协议。 以下是我的假设(以及问题): RabbitMQ使用AMQP协议(实现了AMQP协议) Java客户端需要使用AMQP协议客户端库来连接/使用RabbitMQ JMS API在这里扮演了什么角色?J...

110得票3回答
消息、队列和交换机的限制是什么?

允许的消息类型有哪些(字符串、字节、整数等)? 消息的最大大小是多少? 队列和交换机的最大数量是多少?

83得票2回答
RabbitMQ和Socket.io有何区别?

我正在进行实时网络应用程序开发。 浏览器用户应该通过 node.js 服务器相互通信。一个用户编写一条消息,所有其他用户都会收到它。 我不太明白 RabbitMQ 如何工作。但是从快速阅读中可以看出,它处理消息的发布/订阅。 一个用户(在浏览器中)发布一些内容,订阅者(在其他浏览器中)获...

81得票3回答
AMQP中的“delivery mode”是什么?

我了解有两个选项: "非持久化" "持久化" 但这意味着什么呢? "非持久化"是指:如果没有消费者,AMQP Fabric将尝试传递消息,否则消息将被丢弃。 "持久化"是指:如果没有消费者接受消息,AMQP将重试传递该消息。

74得票3回答
RabbitMQ:使用主题交换的持久化消息

我对RabbitMQ非常陌生。我已经设置了一个'topic'交换。消费者可以在发布者之后启动。我希望消费者能够接收到在它们启动之前发送但尚未被消费的消息。该交换是使用以下参数设置的:exchange_type => 'topic' durable => 1 auto_delete ...

74得票6回答
为什么要使用AMQP/ZeroMQ/RabbitMQ

与编写自己的库相比。 我们正在开发一个自分配服务器池的项目,如果某一部分变得过重,则管理员将其分割并作为单独的进程放在另一台机器上。它还会警报所有受影响的连接客户端,让他们连接到新的服务器。 我对使用ZeroMQ进行服务器之间和进程之间通信很感兴趣。我的合作伙伴更喜欢自己实现这个功能。我希...

72得票2回答
RabbitMQ - 单个服务器上能处理多少个队列?

RabbitMQ在单个服务器上能处理的最大队列数是多少? 这取决于RAM吗?还是取决于Erlang进程?

65得票3回答
面向服务的架构 - AMQP还是HTTP

一些背景。 非常庞大的 Django 应用程序。所有组件都使用相同的数据库。我们需要分离服务,这样我们就可以独立升级系统的某些部分而不影响其他部分。 我们使用 RabbitMQ 作为 Celery 的代理。 现在我们有两个选择: 使用 REST 接口的 HTTP 服务。 通过 AMQ...