Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Pautas de tallas de Amazon MQ para RabbitMQ
Puede elegir el tipo de instancia de bróker que mejor se adapte a su aplicación. Al elegir un tipo de instancia, es importante tener en cuenta los factores que afectarán al rendimiento del bróker:
-
el número de clientes y colas
-
el volumen de mensajes enviados
-
mensajes guardados en la memoria
-
mensajes redundantes
Los tipos de instancias de broker más pequeños (t3.micro
) solo se recomiendan para probar el rendimiento de las aplicaciones. Recomendamos tipos de instancias de broker más grandes (m5.large
o superiores) para los niveles de producción de clientes y colas, el alto rendimiento, los mensajes en memoria y los mensajes redundantes.
Es importante poner a prueba a sus agentes para determinar el tipo y el tamaño de instancia adecuados para sus requisitos de mensajería de carga de trabajo. Utilice las siguientes pautas de tamaño para determinar el tipo de instancia más adecuado para su aplicación.
Directrices de tamaño para la implementación en una sola instancia
En la siguiente tabla, se muestran los valores límite máximos para cada tipo de instancia para los corredores de instancias únicas.
Tipo de instancia | Conexiones | Canales | Queues | Consumidores por canal | Palas |
---|---|---|---|---|---|
t3.micro | 500 | 1500 | 2.500 | 1 000 | 150 |
m5.large | 5 000 | 15.000 | 30.000 | 1 000 | 250 |
m5.xlarge | 10 000 | 30.000 | 60 000 | 1 000 | 500 |
m5.2xlarge | 20 000 | 60 000 | 120 000 | 1 000 | 1 000 |
m5.4xlarge | 40 000 | 120 000 | 240.000 | 1 000 | 2,000 |
Directrices de tamaño para el despliegue de clústeres
En la siguiente tabla, se muestran los valores límite máximos para cada tipo de instancia para los agentes de clústeres.
Tipo de instancia | Queues | Consumidores por canal |
---|---|---|
m5.large | 10 000 | 1 000 |
m5.xlarge | 15.000 | 1 000 |
m5.2xlarge | 20 000 | 1 000 |
m5.4xlarge | 30.000 | 1 000 |
Los siguientes límites de conexión, canal y pala se aplican por nodo.
Tipo de instancia | Conexiones | Canales | Palas |
---|---|---|---|
m5.large | 500 | 15.000 | 50 |
m5.xlarge | 10 000 | 30.000 | 100 |
m5.2xlarge | 20 000 | 60 000 | 200 |
m5.4xlarge | 40 000 | 120 000 | 400 |
Los valores límite exactos para un agente de clústeres pueden ser inferiores al valor indicado en función del número de nodos disponibles y de la forma en que RabbitMQ distribuya los recursos entre los nodos disponibles. Si supera los valores límite, puede crear una nueva conexión a un nodo diferente e intentarlo de nuevo, o puede actualizar el tamaño de la instancia para aumentar los límites máximos
Mensajes de error
Cuando se superan los límites, se muestran los siguientes mensajes de error. Todos los valores se basan en los límites de m5.large
una sola instancia.
nota
Los códigos de error de los siguientes mensajes pueden cambiar en función de la biblioteca cliente que utilice.
Conexión
ConnectionClosedByBroker 500 "NOT_ALLOWED - connection refused: node connection limit (500) is reached"
Canal
ConnectionClosedByBroker 1500 "NOT_ALLOWED - number of channels opened on node
'rabbit@ip-10-0-23-173.us-west-2.compute.internal' has reached the maximum allowed limit of (15,000)"
Consumidor
ConnectionClosedByBroker: (530, 'NOT_ALLOWED - reached maximum (1,000) of consumers per channel')
nota
Los siguientes mensajes de error utilizan el API formato HTTP de administración.
Cola
{"error":"bad_request","reason":"cannot declare queue 'my_queue': queue limit in cluster (30,000) is reached"}]
Pala
{"error":"bad_request","reason":"Validation failed\n\ncomponent shovel is limited to 250 per node\n"}
Fantasma
{"error":"bad_request","reason":"cannot create vhost 'my_vhost': vhost limit of 4,000 is reached"}