Microservices

468 visualizações

Publicada em

17 Semana Integrada do CEATEC (PUC Campinas) http://bit.ly/1NxPniy . Palestra sobre MicroServices #CEATEC

Publicada em: Software
0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
468
No SlideShare
0
A partir de incorporações
0
Número de incorporações
21
Ações
Compartilhamentos
0
Downloads
10
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Microservices

  1. 1. Microservices Flávio Secchieri Mariotti Enterprise Architect Setembro, 2015
  2. 2.  Objetivo  O que são Microservices  Características do Microservices  Os princípios dos Microservices  Vantagens  Desvantagens  Microservice é o futuro?  Referências  Q&A Agenda
  3. 3. Beleza, mas quem é você...
  4. 4. Flávio Secchieri Mariotti Mestrando em Engenharia da Computação com ênfase em Engenharia de Software pelo IPT/USP. Pós-Graduado pelo Instituto Brasileiro de Tecnologia Avançada IBTA em Engenharia de Software baseado em SOA. Bacharel em Sistemas de Informação pela UNIUBE e Técnico em Processamento de Dados pelo UniFeb. Brazil Architecture Manager na CSC - Computer Sciences Corporation, Professor Universitário, Articulista, Palestrante e Consultor especializado em desenvolvimento de software orientado em arquiteturas OO, SOA, GIS, Mobile, Cloud Computing com tecnologia Microsoft. Profissional Certificado ITIL, PSM e MCP. Professor de Pós-Graduação na FIAP a mais de 5 anos das disciplinas: SOA, Cloud Computing (Azure), Windows Phone e Arquitetura de Soluções (TOGAF). https://br.linkedin.com/in/flaviomariotti @FlavioSMariotti fmariotti@csc.com / flavio.mariotti@outlook.com
  5. 5. Que horas vamos falar sobre Microservices...
  6. 6. novo paradigma para arquitetura de software. Um novo estilo de arquitetura de software que propõe uma nova abordagem arquitetural, visando reduzir acoplamento e aumentar a flexibilidade do sistema, facilitando, assim as adequações requeridas em um cenário cada vez mais complexo de aplicações compostas por vários elementos, tais como: APIs, processos independentes de comunicação, ecossistema heterogêneo e tecnologia agnóstico. Objetivo Entender...
  7. 7. SOA vs Microservices De novo esse papo de flexibilidade, desacoplamento e serviços, já vi isso tudo em SOA...
  8. 8. Um pouco de contexto sobre SOA
  9. 9. Definição O que é SOA? SOA é um estilo arquitetural que diminui o acoplamento, aumenta a flexibilidade e torna a interoperabilidade e troca de mensagens entre sistemas mais simples. Por que existem diversas definições de SOA? Explicar o que é SOA para um CEO é diferente de explicar o que é SOA à um programador.
  10. 10. Arquitetura Orientada a Serviços
  11. 11. Services Serviços representam um processo, atividade ou tarefa de negócio transformados em componentes de software de alto nível. Se compõe com a aplicação de princípios do service-orientation e unidades lógicas que podem existir como objetos, componentes, web-services, ou serviços REST. Princípios:  Serviços são reutilizáveis  Serviços compartilham um contrato formal  Serviços possuem baixo acoplamento  Serviços abstraem a lógica  Serviços são capazes de se compor  Serviços são autônomos  Serviços devem possuir a capacidade de serem descobertos
  12. 12. Services Serviços representam um processo, atividade ou tarefa de negócio transformados em componentes de software de alto nível. Se compõe com a aplicação de princípios do service-orientation e unidades lógicas que podem existir como objetos, componentes, web-services, ou serviços REST. Princípios:  Serviços são reutilizáveis  Serviços compartilham um contrato formal  Serviços possuem baixo acoplamento  Serviços abstraem a lógica  Serviços são capazes de se compor  Serviços são autônomos  Serviços devem possuir a capacidade de serem descobertos Para Microservices vamos nos concentrar nesse princípio...
  13. 13. Sendo assim... podemos dizer que Microservice é uma forma de projetar serviços em uma arquitetura orientada a serviços SOA
  14. 14. Diferenças significativas existem... ESBs usado para integrar aplicações monolíticas Modelos de governança centralizada ESBs (API Gateway) independentes Modelos de governança descentralizadaSOA Microservices PORÉMMMM!!!!!
  15. 15. Um pouco de contexto sobre Microservices
  16. 16. O que são Microservices? Deixa essa comigo!!! Eu sei... Microservice é um serviço pequeno
  17. 17. Definição Microservices são um novo estilo arquitetural que propõe uma abordagem de desenvolvimento de sistemas compostas por um conjunto de pequenos serviços…
  18. 18. Ufa!! Ainda bem que ele perguntou... Acho que entendi.. Mas, como saber se o serviço está pequeno?
  19. 19. How Big Microservices deve ser grande o suficiente para ter uma funcionalidade bem definida, e pequeno o suficiente para ser independente…
  20. 20. Mas, afinal... Como fazemos hoje?
  21. 21. Características de Arquitetura Monolítica Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure. -- Melvyn Conway, 1967
  22. 22. Características de Arquitetura Monolítica Dificuldades para escalar…
  23. 23. Características de Arquitetura Microservices  Componetizado por serviços  Organizado em torno de capacidades de negócios  São produtos não projetos  Pontos de conectividade mais inteligentes  Governança descentralizada  Gestão de dados descentralizados  Automação de infra-estrutura (DevOps Skills)  Projetado para o fracasso
  24. 24. Características de Arquitetura Microservices  Componetizado por serviços
  25. 25. Características de Arquitetura Microservices  Organizado em torno de capacidades de negócios
  26. 26. Características de Arquitetura Microservices  Gestão de dados descentralizados Mais facilidade para escalar…
  27. 27. Características de Arquitetura Microservices  Automação de infra-estrutura (DevOps Skills)
  28. 28. Características de Arquitetura Microservices  Projetado para o fracasso
  29. 29. Por que devo utilizar?
  30. 30. Vantagens  Alinhamento organizacional  Facilidade para liberação de novas funcionalidades  Escalabilidade independente / Mais flexibilidade  Facilidade para se concentrar nas questões de segurança  Escolha da tecnologia mais adequada
  31. 31. Será??? Sabia que valeria apena conhecer esse tal de Microservices... Só Vantagens Microservices isn’t a free lunch!!!
  32. 32. Desvantagens  Serviços poliglotas, requer desenvolvedores poliglotas  Leva tempo para chegar lá  Testes são mais complexos  Replicação de dados e regras  Transações  Gestão de configuração e versionamento  Log das aplicações
  33. 33. Quem já está utilizando?
  34. 34. Então é isso... Microservice é melhor que monolítico?
  35. 35. “While our experiences so far are positive compared to monolithic applications, we're conscious of the fact that not enough time has passed for us to make a full judgement.” -- James Lewis and Martin Fowler
  36. 36. Referências
  37. 37. Referências Livros, Blogs, Frameworks, e mais... Microservices is SOA? https://dmitrio.wordpress.com/2014/05/25/microservices-is-soa/Scrum.org Microservices http://martinfowler.com/articles/microservices.html The principles of Microservices O’Reilly Conference with Sam Newman
  38. 38. Q&A
  39. 39. Dúvidas Q&A Isso vai cair na prova? zzzzZZZ What? Já terminou? Qual o nome dele mesmo? Ele disse micro ou macro? Cara, na boa, Microservices e SOA são iguais!!! Afff, Deveria ter ido na palestra do lado.... Quem tá com fome? Não entendi NADA!!!

×