Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Micro Problemas!

Micro Problemas!

presented at tropical ruby 2015

More Decks by Marcos Castilho da Costa Matos

Other Decks in Programming

Transcript

  1. Uma codebase com um *bilhão de linhas responsável por toda

    lógica de negócios ! (o número atual pode variar)
  2. Pequenas bases de código com apenas uma *funcionalidade ! para

    algumas definições de uma e funcionalidade
  3. Princípio da conservação da Complexidade ! ! A complexidade total

    de um sistema permanece a mesma ! A Física, sobre micro serviços
  4. Micro serviços ! Uma base de código pequena ! que

    executa apenas uma funcionalidade
  5. pequena o suficiente para: ! Ser rescrita em "pouco tempo"

    ! Ser mantida por um time pequeno ! Ser rapidamente entendida por um novo membro do time ! Grande o suficiente pra ser independente
  6. Primeira Regra dos Micro Serviços ! Não comece um projeto

    com micro serviços ! chuta qual é a segunda
  7. não amarre seus serviços dev testes integração entrega dor e

    tristeza Serviço A Serviço B Serviço C
  8. IDs de correlação header http cid: 42 cid: 42 cid:

    42 requisição original ! cid: 42
  9. Imagina um end-to- end em uma dúzia de serviços !

    Instável nem começa a descrever o resultado
  10. { "name": “Get User By Name", "request": { "headers": {

    "Content-Type": "application/json" }, "http_method": "get", "path": “/user/:username", }, "response": { "status": 201, "properties": { "email": { "type": "string" } }}} materialize o contrato
  11. o produtor Conjunto de todas as interações com o produtor

    serviço de clientes serviço de entregas serviço de promoções serviço de pagamentos
  12. Algumas Referências ! http:/ /martinfowler.com/articles/microservices.html Definição de micro serviços por

    Martin Fowler e Jamis Lewis. ! http:/ /martinfowler.com/articles/microservice-testing/ testando micro serviços pro Toby Clemson ! http:/ /martinfowler.com/articles/consumerDrivenContracts.html artigo original dos testes de contrato, por Ian Robinson ! http:/ /www.thoughtworks.com/insights/blog/microservices-lessons- frontline Palestra sensacional sobre micro serviços por vários thoughtworkers ! http:/ /samnewman.io/books/building_microservices/ Livro do Sam Newman com tudo sobre micro serviços
  13. Agradecimentos ! Meus colegas da ThoughtWorks por pelas discussões de

    email, material e toda a ajuda revisando esta palestra