Linee guida per il dimensionamento di Amazon MQ for RabbitMQ - Amazon MQ

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Linee guida per il dimensionamento di Amazon MQ for RabbitMQ

Puoi scegliere il tipo di istanza del broker che meglio supporta la tua applicazione. Quando si sceglie un tipo di istanza, è importante considerare i fattori che influiranno sulle prestazioni del broker:

  • il numero di client e di code

  • il volume dei messaggi inviati

  • messaggi conservati in memoria

  • messaggi ridondanti

I tipi di istanze di broker più piccoli (m7g.medium) sono consigliati solo per testare le prestazioni delle applicazioni. Consigliamo tipi di istanze broker più grandi (m7g.largee superiori) per livelli di produzione di client e code, throughput elevato, messaggi in memoria e messaggi ridondanti.

È importante testare i broker per determinare il tipo e la dimensione dell'istanza appropriati per i requisiti di messaggistica del carico di lavoro. Utilizza le seguenti linee guida sul dimensionamento per determinare il tipo di istanza più appropriato per la tua applicazione.

Linee guida per il dimensionamento di m7g con code quorum per la distribuzione a singola istanza

La tabella seguente mostra i valori limite massimi per ogni tipo di istanza per i broker a istanza singola.

Tipo di istanza Connessioni Canali Consumatori per canale Queues Fantasmi Pale
mq. 7 g. Medio 100 500 1.000 2.500 10 150
mq.m7g.grande 5.000 15.000 1.000 20.000 1500 250
mq.m7g.xlarge 10.000 30.000 1.000 30.000 1.500 500
mq.m7g.2xlarge 20.000 60.000 1.000 40.000 1.500 1.000
mq.m7 g. 4xgrande 40.000 120.000 1.000 60.000 1.500 2.000
mq.m7 g. 8x grande 80.000 240.000 1.000 80.000 1.500 4.000
mq. 7 g. 12 x grande 120.000 360.000 1.000 100.000 1.500 6.000
mq.m7 g. 16 x grande 160.000 480.000 1.000 120.000 1.500 8.000

Linee guida per il dimensionamento di m7g con code quorum per la distribuzione in cluster

La tabella seguente mostra i valori limite massimi per ogni tipo di istanza per i broker di cluster.

Tipo di istanza Connessioni Canali Consumatori per canale Queues Fantasmi Pale
mq. 7 g. Medio 100 500 1.000 100 10 50
mq.m7g.grande 5.000 15.000 1.000 10.000 1.500 150
mq.m7g.xlarge 10.000 30.000 1.000 15.000 1.500 300
mq.m7g.2xlarge 20.000 60.000 1.000 20.000 1.500 600
mq.m7 g. 4xgrande 40.000 120.000 1.000 30.000 1.500 1.200
mq. 7 g. 8 x grande 80.000 240.000 1.000 40.000 1.500 2.400
mq. 7 g. 12 x grande 120.000 360.000 1.000 50.000 1.500 3.600
mq.m7 g. 16 x grande 160.000 480.000 1.000 60.000 1.500 4.800

La tabella seguente mostra i valori limite massimi per ogni tipo di istanza per i broker a istanza singola.

Tipo di istanza Connessioni Canali Consumatori per canale Queues Fantasmi Pale
m5.large 5.000 15.000 30.000 1.000 1500 250
m5.xlarge 10.000 30.000 60.000 1.000 1500 500
m5.2xlarge 20.000 60.000 120.000 1.000 1500 1.000
m5.4xlarge 40.000 120.000 240.000 1500 1.000 2.000

La tabella seguente mostra i valori limite massimi per ogni tipo di istanza per i broker di cluster.

Tipo di istanza Queues Consumatori per canale Pale
m5.large 10.000 1.000 150
m5.xlarge 15.000 1.000 300
m5.2xlarge 20.000 1.000 600
m5.4xlarge 30.000 1.000 1200

I seguenti limiti di connessione e canale vengono applicati per nodo:

Tipo di istanza Connessioni Canali
m5.large 5000 15.000
m5.xlarge 10.000 30.000
m5.2xlarge 20.000 60.000
m5.4xlarge 40.000 120.000

I valori limite esatti per un broker di cluster possono essere inferiori al valore indicato a seconda del numero di nodi disponibili e del modo in cui RabbitMQ distribuisce le risorse tra i nodi disponibili. Se superi i valori limite, puoi creare una nuova connessione a un altro nodo e riprovare, oppure puoi aggiornare la dimensione dell'istanza per aumentare i limiti massimi

Messaggi di errore

I seguenti messaggi di errore vengono restituiti quando vengono superati i limiti. Tutti i valori si basano sui limiti delle m7.large singole istanze.

Nota

I codici di errore per i seguenti messaggi possono cambiare in base alla libreria client utilizzata.

Connessione

ConnectionClosedByBroker 500 "NOT_ALLOWED - connection refused: node connection limit (5000) is reached"

Canale

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)"

Consumatore

ConnectionClosedByBroker: (530, 'NOT_ALLOWED - reached maximum (1,000) of consumers per channel')

Nota

I seguenti messaggi di errore utilizzano il formato API di gestione HTTP.

Coda

{"error":"bad_request","reason":"cannot declare queue 'my_queue': queue limit in cluster (10,000) is reached"}]

Pala

{"error":"bad_request","reason":"Validation failed\n\ncomponent shovel is limited to 150 per node\n"}

Fantasma

{"error":"bad_request","reason":"cannot create vhost 'my_vhost': vhost limit of 1500 is reached"}