Deploy Contínuo

Arqui e tecno

Maturidade da Integração Contínua

Há 15 anos Martin Fowler publicou Continuous Integration, artigo seminal da Integração Contínua. Alguns meses depois, foi lançado o CruiseControl, primeiro servidor de Integração Contínua. Hoje no mundo, apenas 50% das empresas possuem Integração Contínua, número baixo levando-se em conta a redução de custos que toda automação traz. Talvez as empresas estejam pensando apenas no investimento, sem uma visão muito clara do ROI. O esforço de implementação da automação pode ser recuperado nas atividades de build/deploy/teste em dois à quatro sprints. O retorno é especialmente grande em projetos longos. Além…

Leia mais
Arqui e tecno

Medindo o desempenho de aplicações Web – Parte 3

Nos artigos anteriores (artigo 1 e artigo 2), vimos quais são os tipos de teste de performance que podem ser realizados para garantir o bom desempenho da aplicação, e também como um teste de carga pode nos ajudar a descobrir o quão performática é nossa aplicação. Nesse artigo veremos o que é, e como pode ser realizado um novo conceito de testes: o PWPO.

Leia mais
Arqui e tecno

Os Padrões dos Gigantes da Web – o Feature Flipping

O padrão “Feature Flipping” permite ativar e desativar as funcionalidades diretamente em produção sem a necessidade de subir uma nova versão. Os Gigantes da Web usam vários termos para definir esse padrão: o FlickR e a Etsy falam de “Feature Flags”, o Facebook escolheu “Gatekeepers”, “Feature buckets” para o Forrst, “Features bits” na Lyris inc. e o Martin Fowler fala de “Feature toggles”. Cada um usa um nome e uma implementação diferente mas os objetivos são os mesmos. Nesse artigo, vamos explicar como implementamos o…

Leia mais
Arqui e tecno

Os Padrões dos Gigantes da Web – Deploy Contínuo

Sabemos que os Gigantes da Web (Google, Amazon, Netflix, Yahoo, etc.) costumam melhorar os seus produtos de maneira permanente respeitando assim a máxima "Release early, release often". Como é possível que eles entreguem melhorias tão rapidamente, se em algumas equipes de desenvolvimento qualquer mudança pode demorar semanas para chegar à produção? Na maior parte das vezes, eles têm um processo de Deploy Contínuo ("Continuous Deploy") que segue uma dessas duas possibilidades: totalmente automatizado: uma mudança no código é automaticamente verificada e, se tudo estiver certo,…

Leia mais