Programa do Curso

Introdução

  • Arquitetura de sistemas e serviços, PaaS e conceção nativa da nuvem

Visão geral da arquitetura de sistemas monolíticos

  • Executar toda a funcionalidade de um aplicativo monolítico em um único processo
  • [Capacidade de replicação em vários servidores
  • Protocolos utilizados em sistemas monolíticos: EAI, CORBA, etc.

Panorâmica dos serviços Web

  • Arquitetura orientada para os serviços (SOA) e arquitetura Microservices

Service-Oriented Architecture (SOA)

  • Benefícios e custos da SOA
  • Sucessos e fracassos na implementação da SOA
  • Mensagens e ESB
  • Infra-estruturas e ferramentas de apoio à SOA

Como Microservices Implementar conceitos de serviços Web

  • Fazer uma coisa e fazê-la bem
  • DevOps
  • Implantação e entrega contínuas (integração contínua, processo de construção contínua, etc.)
  • Protocolos ligeiros

Protocolos e normas de microsserviços

  • HTTP, JMS, AMQP, Websockets, JSON, etc.

Estruturas de desenvolvimento para construção Microservices

  • Estruturas baseadas em Java (Spring Cloud)
  • [Estruturas baseadas em scripts (Seneca)

Decomposição de uma aplicação monolítica

  • Desenvolvimento de aplicações implantáveis de forma independente
  • Organização de aplicações de microsserviços em torno de capacidades comerciais
  • Estudo de caso: Migração de uma aplicação monolítica para três microsserviços principais

Configurando um ambiente de desenvolvimento Spring Cloud

  • Configurando Docker e Docker Compose
  • Definindo variáveis de ambiente

Visão geral de Spring Cloud e Spring Boot

  • Spring Cloud subprojectos: Config Server & Bus, Eureka, Ribbon, Feign e Hystrix
  • Spring Boot

Criando uma aplicação Spring Boot

Gerenciamento de configuração centralizado e versionado com o Spring Cloud Config

Actualizações dinâmicas de configuração com o Spring Cloud Bus

Descoberta de serviços com o Eureka

Balanceamento de carga com Ribbon

Aplicação de disjuntores com o Hystrix

Clientes REST declarativos com Feign

Trabalhar com o API Gateway

Protegendo um aplicativo de microsserviço

Rastreamento de microsserviços para descobrir latências

Implantação de Microservices

  • Contêineres (Docker, K8N, LXC, etc...)
  • Configuration Management (Ansible, etc...)
  • Descoberta de serviços
  • Monitorização e gestão de Microservices
  • Infraestrutura para Microservices

Nuvem e Auto Scalabilidade de Microservices

  • Redundância de microsserviços e fail-over
  • Escalabilidade do desempenho para Microservices
  • Autoescalabilidade
  • Implementação de Microservices em OpenStack, AWS e outras plataformas de nuvem

Resolução de problemas comuns em aplicações distribuídas

  • Complexidade do ecossistema
  • Desempenho da rede
  • Segurança
  • Implantação
  • Testes
  • Nano-serviços

Considerações finais para a criação de sistemas prontos para produção

  • Tornar o sistema fácil para iniciantes
  • Tornar o sistema completo para que possa servir de base para aplicações empresariais

Resumo e Conclusão

Requisitos

  • Compreensão da engenharia de software e de sistemas
  • Experiência de desenvolvimento Java
  • Experiência com Spring Framework

Público

  • [Programadores que pretendam criar e implementar rapidamente microsserviços
  • Arquitectos de sistemas que pretendam implementar uma arquitetura de microsserviços
 21 Horas

Declaração de Clientes (5)

Próximas Formações Provisórias

Categorias Relacionadas