INSTITUCIONAL | Arquitetura e design para APIs autoescaláveis – Fernando Ultremare, da Dextra

Preview:

Citation preview

ARQUITETURA NATIVA NA NUVEMPIVOTAL CLOUD FOUNDRY SOLUTIONS

Glenio Borges

@gdambor

/glenioborges

Arquitetura Nativa na Nuvem

The silicon Valley is coming…Jamie Dimon

CEO, JPMorgan Chase

Fonte: Carta aos acionistas 2015

Rob Mee Pivotal CEO

<Vale do Silício não é um lugar e sim um estado de espírito>

Velocidade Ganha o Mercado

<a disrupção ocorre quando a entrega do software muda>

* Fonte: The Phoenix Project. DevOps em 2012.

Frequência de Deployments

<cloud native>

independente de infra, containerizada

gestão e orquestração de infra automatizadaplataforma Nativa

na Nuvem

12 Factor Appsapp que roda e escala de forma confiável e previsível no topo

de uma infra na nuvem nem sempre confiável

Micro-serviços

Aplicação Monolítica

Arquitetura Orientada a Serviços (SOA)

Micro-serviços - Arquitetura “Death Star”

12factor.net• As dependências devem ser isoladas e explicitamente declaradas

• As configurações devem ser mantidas externa a aplicação e acessada por qualquer serviço

• Os serviços de apoio devem ser usados como recursos

Spring Boot

Spring Boot• Framework de Desenvolvimento

• Possui Ferramentas de Integração dos micro-serviços

• Spring Cloud, Netflix OSS

• https://spring.io/blog/2015/07/14/microservices-with-spring

❤🌎

Mon

thly

Sprin

g Bo

ot D

ownlo

ads

0.0M

0.6M

1.2M

1.8M

2.4M

Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec

Plataforma Nativa na Nuvem

😡🐮💩>notcode<😃<code>

😃<code>

😡🐮💩😃<code>

😃<code>

>notcode<

😃<∆code>

😡🐮💩😃<code>

😃<code>

>notcode<

😃<∆code> 😃<∆∆code>

O Poder de uma Plataforma

O que é Cloud Foundry

É uma plataforma open source para desenvolver e rodar aplicações na nuvem, em produção

Fundação Cloud Foundry

Demo

Entrega Contínua

Scrum-Cascateado

Entrega Contínua

Canary Release

Release Boi-de-piranha

Blue-Green Deployment

App v1Router

App v2

Blue-Green Deployment

Router App v2

Containers

Escalar Verticalmente não Resolve• Tempo de Provisionamento Longo

• Utilização Inadequada de recursos

• Mal Dimensionamento

Escala Horizontal• Hardware mais barato

• Melhor utilização de recursos através da virtualização

• Mais rapidez para escalar

• Infraestrutura como código

• Auto-scale

Containers mudaram a unidade de implantação

Garden

DevOps

Estrutura de Projeto Tradicional

Ops Dev

DevOps

• Grupo de Produto

• Times Verticais

• Gestão de Produto e Operações no mesmo time

• Tudo que é necessário para construir e operar seu software

Times de TI Tradicionais

SILOS

DevOps

DevOps