Save 37% off PRO during our Black Friday Sale! »

Spring Cloud : Primeiros passos para o desenvolvimento de Microsserviços utilizando Java e Spring

Spring Cloud : Primeiros passos para o desenvolvimento de Microsserviços utilizando Java e Spring

Transcript

  1. Spring Cloud : Primeiros passos para o desenvolvimento de Microsserviços

    utilizando Java e Spring Kamila Santos
  2. Kamila santos Backend Developer community organizer book co-author

  3. O que são microsserviços Caracterísitcas dos microsserviços Spring Cloud Service

    Discovery Gateway Config Server Agenda
  4. Circuit Breaker Exemplo Agenda

  5. O que são microsserviços

  6. São uma abordagem de arquitetura no qual o software é

    composto de pequenos serviços independentes que se comunicam entre si e são organizados de acordo com seus domínios de negócio . O que são microsserviços
  7. Em arquiteturas monolíticas , os processos são extremamente acoplados e

    são executados como um único serviço , se uma parte desse sistema tiver um pico de demanda, todo o restante da arquitetura deverá escalar. O que são microsserviços
  8. Essa complexidade e acoplamento dificulta a implementação de novas tecnologias,

    já que afeta a aplicação como um todo. O que são microsserviços
  9. Arquiteturas monolíticas aumentam o risco de disponibilidade dos aplicativos, processos

    altamente dependentes e acoplados podem causar uma falha geral nesse único processo. O que são microsserviços
  10. Já com a arquitetura de microsserviços , a arquitetura é

    criada com seus componentes independentes que executam cada processo do aplicativo como um serviço. O que são microsserviços
  11. Como são executados de forma independente , cada serviço pode

    ser desenvolvido em uma tecnologia diferente , ser escalado e atualizado de forma independente. O que são microsserviços
  12. Caracterísitcas dos microsserviços

  13. Cada serviço pode ser desenvolvido, escalado e implantado sem interferir

    em outros serviços. Autônomos
  14. Não é necessário compartilhar nenhum código e a comunicação acontece

    por meio de chamadas as APIs ou de forma assíncrona. Autônomos
  15. Cada serviço é desenhado para resolver um problema específico ,

    se começar a ser necessário ter outras responsabilidades é indicado que se crie um novo serviço. Especialistas
  16. A independência do serviço aumenta a resiliência a falhas na

    arquitetura , se um deles tiver algum problema , só afetará alguma parte do fluxo. Resiliência
  17. A divisão em módulos com responsabilidades bem definidas permite que

    funções específicas de algum serviço possam ser utilizadas para complementar features em outros sem precisar reescrever o código. Reutilização de código
  18. Os responsáveis por cada serviço podem decidir qual a melhor

    stack para cada caso. Liberdade de escolha de stack
  19. Spring Cloud

  20. Spring Cloud fornece ferramentas para que os desenvolvedores criem rapidamente

    alguns dos padrões comuns em sistemas distribuídos (por exemplo, gerenciamento de configuração, descoberta de serviço, disjuntores, roteamento inteligente, micro-proxy, barramento de controle, tokens únicos, bloqueios globais, eleição de liderança, distribuído sessões, estado do cluster). Spring Cloud
  21. A coordenação de sistemas distribuídos leva a padrões padronizados e,

    usando o Spring Cloud, os desenvolvedores podem criar rapidamente serviços e aplicativos que implementam esses padrões Spring Cloud
  22. Spring Cloud

  23. Spring Cloud

  24. Possibilita que microsserviços descubram facilmente a rota de outros serviços

    que precisem acessar. Service discovery
  25. Mais conhecidos: Spring Cloud Consul Spring Cloud Netflix Eureka Service

    discovery
  26. Service discovery

  27. Service discovery

  28. Service discovery

  29. Service discovery

  30. Service discovery

  31. Service discovery

  32. Service discovery

  33. Tem o papel de ser um intermediário nas nossas requisições

    para outros serviços. Gateway
  34. Mais conhecidos Zuul Spring Cloud Gateway Gateway

  35. Desenvolvido com o Spring Framework 5, Project reactor e Netty

    Server Spring Cloud Gateway
  36. Desenvolvido com o Spring Framework 5, Project reactor e Netty

    Server Spring Cloud Gateway
  37. Permite armazenar configurações de modo centralizado Config Server

  38. Config Server

  39. Facilita a utilização de clients de modo declarativo para integração

    de microsserviços. Feign
  40. Controle sobre falhas e altas taxas de latência dentre os

    serviços Circuit Breaker
  41. Ferramenta poderosa para melhorar registro e acompanhamento de logs de

    nossas aplicações Sleuth
  42. se integra com bastante facilidade com LogBack e Sl4j Sleuth

  43. seu grande diferencial consite em adicionar identficadores únicos em cada

    origem de cada log Sleuth
  44. https://aws.amazon.com/pt/microservices/ https://spring.io/projects/spring-cloud https://www.youtube.com/watch? v=zRZuZrwYYc0 https://spring.io/projects/spring-cloud- openfeign#overview Referências

  45. Obrigada :)