RabbitMQ - RabbitMQ 在单个服务器上可以处理多少个队列?

标签 rabbitmq message-queue amqp

RabbitMQ 在单个服务器上可以处理的最大队列数是多少?

这取决于内存吗?它取决于 erlang 进程吗?

最佳答案

RabbitMQ 代理内部没有任何硬编码限制。代理将利用所有可用资源(除非您对其中某些资源设置限制,否则它们在 RabbitMQ 术语中称为水印)。

Erlang 本身设置了一些限制,例如最大并发进程数,但如果理论上可以在单个节点上达到这些限制,那么使用 distributed features 总是个好主意。 .

有很多关于RabbitMQ资源使用和限制的讨论,

附注但有 AMQP 协议(protocol)限制。它们在 4.9 Limitations 节中进行了描述。

The AMQP specifications impose these limits on future extensions of AMQP or protocols from the same wire-level format:

  • Number of channels per connection: 16-bit channel number.
  • Number of protocol classes: 16-bit class id.
  • Number of methods per protocol class: 16-bit method id.

The AMQP specifications impose these limits on data:

  • Maximum size of a short string: 255 octets.
  • Maximum size of a long string or field table: 32-bit size.
  • Maximum size of a frame payload: 32-bit size.
  • Maximum size of a content: 64-bit size.

The server or client may also impose its own limits on resources such as number of simultaneous connections, number of consumers per channel, number of queues, etc. These do not affect interoperability and are not specified.

关于RabbitMQ - RabbitMQ 在单个服务器上可以处理多少个队列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22989833/

相关文章:

python - 如何通过RabbitMQ发送OpenCV帧以由服务器上的OpenCV处理

c - IPC 在 C : Error in receiving 中使用消息队列

java - 无法在 MessageListener 类 AMQP 中 Autowiring bean

jms - Amazon MQ 将 AMQP 消息转换为 JMS

python - 简单协议(protocol)(如twisted.pb)与消息传递(AMQP/JMS)与Web服务(REST/SOAP)

.net - 对 Rabbit + .Net + Windows 的 SSL 支持

rabbitmq - 在 travis build设置中声明 rabbitmq 交换

python - 在celery.py中导入Django App函数

database - 同时使用消息队列和数据库

rabbitmq - 消息、队列和交换器有哪些限制?