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 (t3.micro
) sono consigliati solo per testare le prestazioni delle applicazioni. Consigliamo tipi di istanze broker più grandi (m5.large
e 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 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 | Queues | Consumatori per canale | Pale |
---|---|---|---|---|---|
t3.micro | 500 | 1.500 | 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 |
Linee guida per il dimensionamento per l'implementazione dei cluster
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 |
---|---|---|
m5.large | 10.000 | 1.000 |
m5.xlarge | 15.000 | 1.000 |
m5.2xlarge | 20.000 | 1.000 |
m5.4xlarge | 30.000 | 1.000 |
I seguenti limiti di connessione, canale e pala vengono applicati per nodo.
Tipo di istanza | Connessioni | Canali | Pale |
---|---|---|---|
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 |
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 m5.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 (500) 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 API formato HTTP di gestione.
Coda
{"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"}