13. APRENDIZADOS
DON’T USE TOO MANY CONNECTIONS OR
CHANNELS. ▸ Cada conexão usa ~ 100 KB de RAM
▸ Muitas conexões podem sobrecarregar
servidor RabbitMQ
▸ Os channels do AMQP que “multiplexam" uma
única conexão TCP
15. APRENDIZADOS
DON'T HAVE QUEUES THAT ARE TOO LARGE
OR TOO LONG.
▸ Queues com muitas mensagens aumentam o
consumo de memória
▸ O processo de replicação entre nós fica
demorado
▸ A interface de gerenciamento do RabbitMQ
coleta e armazena estatística de todas
queues
16. APRENDIZADOS
DON'T HAVE AN UNLIMITED PREFETCH
VALUE. ▸ Um dos consumidores irão receber todas as
mensagens
▸ Pode fazê-lo "crashear" sic
▸ Pode acabar a memória no consumidor
17. APRENDIZADOS
MISSING AN HA POLICY WHILE CREATING A
NEW VHOST ON A CLUSTER.
▸ Ao criar um VHOST HA não vem habilitado
por default
▸ As mensagens não serão sincronizadas entre
os nós
18. APRENDIZADOS
ACK AND CONFIRM YOUR MESSAGES.
▸ Mensagens in transit podem se perder caso
haja um falha de conexão e precisarão ser
retransmitidas
▸ Mensagens unaked ficaram na memória do
servidor, se existirem muitas pode causa out
of memory
▸ Uma boa maneira limitar as mensagens
unaked é limitar a quantidade de mensagens
que os consumidores podem prefetch