Curso RabbitMQ Arquitetura
24 HorasVisão Geral
Curso RabbitMQ Arquitetura, Configure facilmente uma arquitetura orientada a mensagens confiável e eficiente com RabbitMQ
Este Curso RabbitMQ Arquitetura, intensivo de 24 horas, cobre a instalação, configuração e desenvolvimento de aplicativos orientados a mensagens com RabbitMQ.
O curso começa com a instalação e configuração do RabbitMQ.
Ele continua com uma discussão sobre o desenvolvimento de aplicativos com a API Java.
O curso também cobre tópicos avançados, como clustering para scale-out e alta disponibilidade, bem como monitoramento de um cluster RabbitMQ.
Objetivo
- Instale e configure o RabbitMQ
- Ative e use plug-ins como o console de gerenciamento da web
- Implementar aplicativos de mensagens em Java
- Configure um cluster RabbitMQ
- Escolha uma estratégia de alta disponibilidade e coloque-a em prática
- Ajustando e otimizando RabbitMQ para um melhor desempenho
- RabbitMQ seguro
- RabbitMQ Monitor
Publico Alvo
- Desenvolvedores
- Arquitetos
- Administradores
Pre-Requisitos
- Conhecimento de Java ou qualquer outra linguagem de programação geral.
Informações Gerais
- Carga horaria 24 horas, de curso prático;
- Se noturno o curso e ministrado de segunda-feira a sexta-feira das 19h às 23h, total de 6 noites,
- Se aos sábados o curso e ministrado de 09h às 18h, total de 3 sábados,
- Se integral o curso e ministrado de segunda-feira, quarta-feira e sexta-feira das 09h às 18h, total de 3 dias,
Formato de entrega:
- Presencial,
- On-line ao vivo em tempo real na presença de um instrutor/consultor atuando no dia-dia com RabbitMQ, Java, Paython, Kafka, entre outras ferramentas de desenvolvimento e integração.
- In-company
Materiais
Português/InglêsConteúdo Programatico
Introduction to messaging and AMQP
- Advantages of messaging and asynchronous systems
- Why Java Message Service (JMS) is not enough
- The Advanced Message Queuing Protocol (AMQP) model
- Differences between AMQP and JMS
RabbitMQ overview
- Description and main features
- Installation, directory structure, configuration
- Persistence with the Mnesia database
- Web management console
- Multi-tenant architecture with virtual hosts
- Logging with the firehose tracer
Development and integration
- Client bindings (Java, C #, Python, Ruby, etc.)
- Focus on Java binding
- Higher level abstractions (Spring AMQP, Pika)
- AMQP routing with exchanges and queues
- Messaging patterns
Reliability of messaging applications
- Tail, exchange and message level sustainability
- Transactions with AMQP and JMS
- Transaction and acknowledgment
- Dead lettering
- Good practices for making message flows more reliable
Clustering
- Scalable message-oriented architecture with clustering
- Configuring a cluster
- Disk and RAM type nodes
- Administering a cluster
- Load balancing
Plugins
- Authentication with LDAP
- AMQP exposure via the STOMP protocol
- Integration of different brokers with Shovel
- Federation of RabbitMQ instances across a WAN
High availability
- Handling a node crash
- "Mirrored tails"
- Synchronization between slave nodes
- Customer side failover
Performances
- Performance impacts of configuration and client code
- Memory flow control
- Good practices
SpringAMQP
- AMQP template
- Configuring AMQP resources with Spring
- Sending and receiving messages
Security
- Why secure AMQP communication
- User Management
- Secure RabbitMQ at the protocol level (SSL / SASL)
- Setting up permissions with virtual hosts
Monitoring
- Management API
- Integration with supervision tools
- Metrics to monitor