O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Microsserviços: compilações de lições aprendidas no 'campo de batalha'

208 visualizações

Publicada em

Apresentado por Elemar Júnior

Consultor e mentor em projetos digitais de alta complexidade e custo computacional. Atua junto às organizações apoiando programadores, arquitetos e executivos a desenvolver soluções para melhorar os resultados dos negócios

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Microsserviços: compilações de lições aprendidas no 'campo de batalha'

  1. 1. Microsserviços: Compilação de boas práticas & lições aprendidas versão 1.1 Elemar Júnior CEO Exímia. Conselheiro na Guiando Microsoft Regional Director Microsoft Most Valuable Professional elemarjr@eximia.co eximia.co / eximia.tech
  2. 2. São as cicatrizes que contam a história do guerreiro.
  3. 3. #-1 MICROSSERVIÇOS!
  4. 4. #0 EVIDENCIE A ARQUITETURA!
  5. 5. Componentes + Responsabilidades + Relacionamentos Estratégia
  6. 6. ARQUITETURA DE SOFTWARE
  7. 7. #1 FOQUE NOS OBJETIVOS DO NEGÓCIO!
  8. 8. Complexidade do Domínio Complexidade do Legado Complexidade da Solução Técnica Complexidade do Software
  9. 9. Complexidade do Domínio Complexidade do Legado Complexidade da Solução Técnica Complexidade do Software Complexidade Essencial Complexidade Acidental
  10. 10. Complexidade do Domínio Complexidade do Legado Complexidade da Solução Técnica Complexidade do Software Complexidade Essencial Complexidade Acidental
  11. 11. Complexidade do Domínio Complexidade do Legado Complexidade da Solução Técnica Complexidade do Software Complexidade Essencial Complexidade Acidental
  12. 12. LEMBRETE: Complexidade é CUSTO!
  13. 13. Capacidade de manter o Sistema Estável Resposta Rápida para Demandas do Negócio
  14. 14. #2 NÃO REINVENTE A RODA.
  15. 15. http://bit.ly/elemarjr-fiefdom
  16. 16. DESACOPLAMENTO
  17. 17. #2 Não fragmente demais. COMECE COM OS BOUNDED CONTEXTS!
  18. 18. #3 PROCESSOS> DADOS
  19. 19. #4 NÃO COMPARTILHE BANCOS DE DADOS!
  20. 20. Sales Support
  21. 21. Sales Support
  22. 22. Sales Support
  23. 23. Sales Support
  24. 24. Sales Support
  25. 25. Sales Support Shopping Cart
  26. 26. #4.1 NÃO COMPARTILHE BANCOS DE DADOS - USE SAGAS!
  27. 27. Sales FinancialLogistic Delivery Criar o Pedido Separar Produto Efetivar Cobrança Iniciar Entrega
  28. 28. Sales FinancialLogistic Delivery Criar o Pedido Separar Produto Efetivar Cobrança Iniciar Entrega TRANSAÇÃO
  29. 29. Sales FinancialLogistic Delivery Criar o Pedido Separar Produto Efetivar Cobrança Iniciar Entrega TRANSAÇÃO Devolver DinheiroDevolver ProdutoCancelar PedidoAção Compensatória
  30. 30. Sales FinancialLogistic Delivery Criar o Pedido Separar Produto Efetivar Cobrança Iniciar Entrega Devolver DinheiroDevolver ProdutoCancelar PedidoAção Compensatória SAGA
  31. 31. Sales FinancialLogistic Delivery Criar o Pedido Separar Produto Efetivar Cobrança Iniciar Entrega SAGA Devolver DinheiroDevolver ProdutoCancelar PedidoAção Compensatória SAGA EXECUTION COORDINATOR (SEC)
  32. 32. #5 IDENTIDADE! IDENTIDADE!
  33. 33. Sales Support Shopping CartIdentidade
  34. 34. #6 SEJA CONSISTENTE!
  35. 35. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE
  36. 36. #6 PREOCUPE-SE COM DISPONIBILIDADE!
  37. 37. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE
  38. 38. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE 99% 99%
  39. 39. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE 99% 99% 98%
  40. 40. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE 99% 99% 99%
  41. 41. Sales Support Shopping CartIdentidade API GATEWAY WEB MOBILE
  42. 42. API GATEWAY WEB MOBILE Identidade Sales Shopping Cart Support Shopping Cart LB
  43. 43. #7 BUSQUE ABSTRAÇÕES SIMPLES
  44. 44. App Core (Domain) Queue Subscriber Domain Events Publisher
  45. 45. http://bit.ly/elemarjr-mais-4-recomendacoes
  46. 46. #8 DOCUMENTE CONSISTENTEMENTE
  47. 47. App Core (Domain) Queue Subscriber Domain Events Publisher
  48. 48. http://bit.ly/elemarjr-falhas
  49. 49. #9 CONTAINERS! CONTAINERS!
  50. 50. http://bit.ly/elemarjr-mais-4-recomendacoes
  51. 51. #10 PREPARE-SE PARA FALHAS!
  52. 52. Sales Shopping CartShopping Cart X What If?
  53. 53. Sales Shopping CartShopping Cart X What If? Retry!
  54. 54. Consumer ProducerCircuit breaker
  55. 55. Closed Open Half-Open Sucesso Uma Tentativa Bem Sucedida Fail Fast Falha Sucesso Falha
  56. 56. Sales Shopping CartShopping Cart X What If?
  57. 57. http://bit.ly/elemarjr-consumir-microsservicos
  58. 58. http://bit.ly/elemarjr-consumir-microsservicos
  59. 59. http://bit.ly/elemarjr-consumir-microsservicos
  60. 60. http://bit.ly/elemarjr-consumir-microsservicos
  61. 61. http://bit.ly/elemarjr-saude-microsservicos
  62. 62. http://bit.ly/elemarjr-saude-microsservicos
  63. 63. #11 Há coisas para ver antes
  64. 64. #12 Pense em resiliência
  65. 65. >
  66. 66. >
  67. 67. #13 ...
  68. 68. DESACOPLAMENTO
  69. 69. FALE CONOSCO AGRADECEMOS SUA ATENÇÃO Elemar Jr. CEO – Exímia.co +55 (51) 99942 0609 contato@eximia.co ACOMPANHE NOSSAS REDES @eximiaco

×