a experiência real de devs migrandoinboundlocaweb.jelasticlw.com.br/ebook/a_experiencia...cloud...

14
Allan Klaus - Pablo Silva - Leandro Gomes - Éden Pereira - Pedro Rezende DEVS MIGRANDO CLOUD A experiência real de PARA O E-BOOK

Upload: vankhanh

Post on 19-Jan-2019

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Allan Klaus - Pablo Silva - Leandro Gomes - Éden Pereira - Pedro Rezende

DEVS MIGRANDO

CLOUD

A experiência real de

PARA O

E-BOOK

Page 2: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Índice

Introdução

Desafios e limitações da Hospedagem compartilhadaChega de teoria,né?!Mas afinal: Do que é feito a Nuvem?Conclusão

02040614

01

Page 3: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Bem-vindo!

Neste material, você ficará por dentro de conceitos sobre Cloud e experiências reais que nós, desenvolvedores, tivemos ao sair da Hospedagem.

Sabemos que lançar um negócio na internet tem ficado cada vez mais fácil com a grande variedade de serviços de hospedagem no mercado. Manter uma hospedagem é simples, mas às vezes, o seu negócio começa a crescer e os problemas começam a aparecer, pois esse tipo de serviço não foi feito para suportar altos fluxos de informação. Isso ocorre porque quando nos referimos a uma hospedagem comum, dizemos que o seu site estará hospedado no mesmo lugar que vários outros, num ambiente conhecido como servidor compartilhado.

É aí que entra o Cloud…

Esse é um serviço que está presente em nossas vidas de uma forma que nem reparamos quando o utilizamos. Ao pagar uma conta, ler emails e comprar pela internet, muito provavelmente você está utilizando um sistema em Cloud. Essa tal nuvem pode trazer ao seu negócio mais flexibilidade para atender uma alta demanda, mas você sabe o que é e como funciona?

O Cloud tem esse nome porque remete a ideia de que você tem recursos ilimitados, disponíveis a um clique, e tudo o que você precisa é de um acesso à internet para fazer o gerenciamento.

Existem, ainda, diversos serviços que podem ser contratados dentro do contexto de Cloud, como o Cloud Hosting e Cloud Server Pro. Ao longo deste e-book vamos mostrar vários motivos para você migrar seu negócio online de uma simples hospedagem para um Cloud, além dos prós e contras de diversas alternativas.

Boa leitura e bons resultados.Ah, obrigado pelo interesse em conhecer nossas experiências como desenvolvedores na Locaweb.

Introdução01

Page 4: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

A palavra compartilhada, no contexto de hospedagem, quer dizer que o servidor onde seu site está hospedado é compartilhado com vários outros, ou seja, os recursos de memória e processamento estão sendo divididos entre todos os sites que forem instalados naquele mesmo servidor.

E ter mais sites hospedados no mesmo lugar que o seu é bom ou ruim? Isso depende do contexto. Vamos entender isso melhor com uma analogia: digamos que você e mais dois amigos resolveram comprar uma pizza grande, de 8 pedaços, para dividir entre vocês. Digamos também que vocês estão com pouca fome e por isso cada um irá comer somente um pedaço. Dessa maneira ainda sobrarão alguns pedaços para uma eventual fome noturna. Agora imagine que seus dois amigos estão com muita fome e cada um deles acaba comendo quatro pedaços e não deixa nenhum para você, o que você faria nessa situação?

É exatamente essa a implicação de ter seu site hospedado em ambiente compartilhado. Pode ser que por algum motivo, um site comece a consumir muitos recursos do servidor, prejudicando diretamente os outros sites hospedados ali, incluindo o seu. Os motivos para que isso aconteça variam, sendo desde falhas de segurança até grande volume de acessos legítimos, pois o site começou a ganhar visibilidade. Nesse momento, muitos clientes se perguntam: mas não era ilimitado?

Essa é uma outra característica de uma hospedagem compartilhada. Geralmente ela é vendida com espaço de disco e transferência ilimitados. Isso significa então que meu site pode ter infinitos acessos mensais simultaneamente no mesmo espaço de tempo e que eu posso armazenar qualquer quantidade de dados que eu quiser?

Desafios e limitações da Hospedagem compartilhada

02

Page 5: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Não é bem assim. Geralmente o que as empresas querem dizer com espaço ilimitado é que não haverá restrições sobre a quantidade de espaço consumido no disco por acessos de usuários ao seu site bem como para transferência de dados. O que precisamos lembrar aqui é que os recursos físicos do servidor (processador e memória) são limitados e, por esse motivo, ter espaço e transferência ilimitados não significa que você pode utilizar esses recursos de forma a prejudicar o funcionamento do servidor, por exemplo, realizando milhões de requisições por minuto

Esse tipo de restrição é necessário para garantir que todos os sites que estão hospedados no mesmo servidor possam operar normalmente sem quedas ou instabilidades. Por isso, a empresa tem times de especialistas que, ao identificaram algum tipo de comportamento que não está previsto nas diretrizes desse tipo de serviço, entram em contato com o cliente para averiguar o que está acontecendo e aconselhá-lo com a melhor solução para a resolução do problema e nesse meio tempo seu site pode ser bloqueado automaticamente pelo sistema.

Nas hospedagens tradicionais, há normalmente uma limitação com relação às ferramentas disponíveis. Grande parte oferece PHP, MySQL e PostgreSQL. Algumas que utilizam servidores Windows oferecem Asp e Banco de dados Access.

PHP

MySQL

PostgreSQL

03

Page 6: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

A partir de agora vou trazer um case real de um sistema que fiz em outubro de 2012 e está até hoje no ar. Usarei este exemplo, pois é de minha autoria e como trabalhei nele sozinho desde o início, pude aprender muita coisa que você também pode enfrentar e isso irá ajudar a detectar a hora de mudar de hospedagem.

Antes de continuar lendo, se você tem receio de abandonar a hospedagem tradicional e partir para o Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor, pode ficar tranquilo! Eu também tive esse receio e, em determinado momento, tive que encarar a experiência e acabou sendo muito bom: não tive problemas que não encontrasse respostas rapidamente e, quanto antes você prever que vai precisar migrar e iniciar com antecedência, melhor!

Primeiro irei explicar o sistema para você ter uma ideia de como ele funciona. É um criador de playlists com link direto do Youtube, onde você pode escutar no site ou criar um player HTML e incorporá-lo ao seu site, funcionando como uma rádio, sem precisar baixar ou fazer o upload de nada, o que o torna bastante leve com relação a sistemas que tem que ser feito o upload de arquivos.

Chega de teoria,né?!04

Page 7: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Quando coloquei o sistema no ar, eu estava utilizando uma hospedagem tradicional e, dentro dessa mesma hospedagem, mantinha outros quatro projetos meus, fora os que estavam no servidor e eram de outras pessoas. Logo, ele conrorria com os outros. Além disso, o sistema não contou com nenhum tipo de investimento e a divulgação ficou no boca-a-boca. Por isso, eu não esperava um crescimento rápido.

O problema chegou justamente quando a aplicação teve o mínimo de crescimento:

Enquanto eu tinha algo em torno de 30 a 35 acessos por dia estava tudo ok, mas quando os picos aconteciam, eu percebia uma grande instabilidade e quando passavam disso, eu começava a ter problemas, pois o servidor passou a não aguentar o fluxo baixo, porém constante de acessos que passou a causar “downtimes” que deixavam minha aplicação fora do ar por cerca de 3 a 4 minutos até o servidor se reestabelecer. Quando isso não acontecia, de qualquer forma causava uma lentidão de 10 a 15 segundos no carregamento de páginas e, algumas vezes, demorava mais de um minuto.

Foi nesse momento que eu percebi que a hospedagem tradicional já não estava mais me atendendo. Na época, todo o sistema estava concentrado em um único local, então comecei a desmembrar, criando serviços do sistema. Essa possibilidade também existe na hospedagem tradicional, porém é inútil e não traz nenhum benefício podendo até gerar déficits quando falamos na questão de performance, estabilidade e escalabilidade já que está tudo concentrado ainda no mesmo servidor.

A princípio separei em dois grandes serviços que eram:• O sistema base onde a pessoa entra e conhece o sistema e monta suas playlists;• Os players que são acionados sempre que um visitante acessa o site do usuário que inseriu a playlist no seu site.

Dados do Analytics

04

Page 8: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Eu deixei o banco de dados no mesmo servidor do sistema base e separei esses serviços em dois clouds de 1 GB de RAM e o ganho em performance foi notável! Me recordo que, na época, usei a ferramenta Page speed do Google e a pontuação do sistema base saiu de 60 para 80, o que possibilitou um melhor posicionamento do sistema na busca orgânica do Google e fez o sistema crescer ainda mais com uma alta de mais de 60% no número de usuários cadastrados e 300% a mais de novas pessoas impactadas.

05

Dados do Analytics (Sistema Base)

Dados do Analytics (Player)

Page 9: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Uma coisa importante que fiz foi acompanhar os dados de uso da CPU e memória (outro ponto que a hospedagem tradicional não fornece para você), pois esse acompanhamento fornece uma noção se é hora de começar a se preocupar com sua aplicação em melhorar performance e recursos disponíveis.

No Cloud, criei uma uma vhost onde faço a homologação de novas funcionalidades antes de disponibilizar para todos os usuários. Porém, não é uma boa prática já que os testes podem trazer instabilidade à aplicação em função de ser um teste e poder conter erros. Por isso, fiz em horários que não há movimentação no sistema base.

Já na nuvem, eu tenho a possibilidade também de separar esse serviço de homologação e deixar em outro Cloud, mas se fosse uma hospedagem tradicional, os testes causariam instabilidades em todos os serviços e alguns deles são usados 24 horas e não podem passar por instabilidades.

Concluindo...

A grande vantagem do Cloud é que posso garantir performance, estabilidade e escalabilidade a cada um desses serviços, pois cada um trabalha em uma nuvem independente, cada qual com os recursos necessários para garantir uma boa experiência aos meus usuários no serviço que ele está acessando e mantendo tudo sempre em ordem full time.

Se você tem pretensões de criar um grande sistema, se há previsão do sistema crescer ou, até mesmo, se você apenas quer garantir 100% de uptime e aliar isso à melhor performance e estabilidade para a sua aplicação, então essa é a hora de você migrar para um Cloud.

Posteriormente, separei o sistema base em mais dois serviços, deixando ele separado em quatro serviços:

• O banco de dados que armazena todas as informações de cadastro do site;• Armazenamento de imagens: os usuários podem inserir imagens de perfil no site,

logo da playlist e os arquivos físicos ficam armazenados nessa parte.

06

Page 10: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

A essência de um Cloud é você ter seus arquivos ou aplicações disponíveis de qualquer lugar do planeta que tenha acesso à internet. E por que isso é tão vantajoso? Principalmente quando estamos falando de Cloud, a infraestrutura é totalmente oculta para nós. E onde está a vantagem nisso? Pense em quanto dinheiro as empresas gastam investindo em infraestrutura de servidores e com manutenção contínua.

Além da mão de obra, todos os aparelhos necessários para criar uma boa estrutura de servidores podem custar muito caro. Imagine também um cenário de catástrofe como, por exemplo, um incêndio, onde são queimados muitos servidores dessa infraestrutura. O que vai acontecer? Prejuízos muitas vezes inestimáveis.

Pensando em pequenas empresas, como startups de tecnologia, a vantagem de não ter que lidar com a infraestrutura localmente fica muito maior. Empresas como estas crescem num ritmo acelerado e precisam ter flexibilidade suficiente a um custo baixo em seus recursos tecnológicos para conseguir atender seus clientes com estabilidade e qualidade. E por isso que a grande maioria delas opta por serviços Cloud.

Mas afinal: Do que é feito a Nuvem?06

Page 11: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Um Cloud consiste em vários computadores interligados, onde cada um hospeda uma máquina virtual para cada contratação. Apesar de parecer algo simples na visão do usuário, por trás de um serviço de Cloud existe um grande trabalho de engenharia. Quando você faz a contratação de um serviço, não é uma pessoa que monta a máquina para você na hora e pluga na tomada. Existem várias linhas de código responsáveis por provisionar seu serviço.

07

Flexibilidade:

possibilidade de

aumentar a capacidade

dos servidores com

apenas alguns cliques e

de forma rápida.

Simples gerenciamento: é

fácil configurar os

servidores e instalar as

aplicações;

Dados protegidos: as empresas especializadas nesse tipo

de tecnologia geralmente estão preparadas para

recuperar seus dados caso algo aconteça. Elas também

investem pesado na segurança dos dados armazenados

para que nada caia em mãos erradas;

Custo baixo: comparado com o valor de ter seus próprios

servidores, ter um Cloud irá trazer economia para os seus

negócios. Manter um datacenter requer muito

investimento em mão de obra capacitada e manutenção;

Confiabilidade: o seu site sempre online

com um alto índice de confiabilidade.

CONFIRA ALGUMAS VANTAGENS DE TER UM CLOUD

Page 12: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Para entender melhor, imagine que você tem várias caixas (suas aplicações) que precisam ser guardadas em sua despensa (máquina física). Você pode até empilhar uma caixa em cima da outra, mas para organizar melhor você monta prateleiras (máquinas virtuais) e coloca as caixas sobre elas. Se uma prateleira não está aguentando o peso das caixas, dá para reforçar a fixação dela na parede. Assim funciona um servidor de Cloud!

Cada máquina física pode armazenar algumas máquinas virtuais que rodam as suas aplicações e, quando a máquina virtual não está suportando a quantidade de processamento, você pode rapidamente melhorar as configurações de hardware dela.

Mesmo sendo uma tecnologia bastante complicada de se implementar, para o usuário isso fica praticamente transparente. O usuário terá a responsabilidade somente de configurar o serviço contratado ajustando-o para as suas necessidades, sendo que a complexidade desta tarefa está totalmente ligada ao tipo de serviço que ele contratará.

08

Page 13: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Agora que você já conhece os benefícios do Cloud para sua empresa, por que esperar que o proble-ma aconteça para tomar a decisão de migrar para a nuvem? Uma vez constatado que seu site está causando instabilidades em um servidor de hospedagem compartilhada, é bem provável que ele seja bloqueado automaticamente até que seja averiguado o que está acontecendo e ficar com seu serviço fora do ar por algum tempo pode lhe trazer prejuízos não só financeiros, mas também da sua marca.

Trazer o seu negócio para o Cloud poderá elevá-lo à um outro nível. Com toda a flexibilidade que esse tipo de serviço oferece, você poderá facilmente adaptar o seu ambiente às suas necessidades e isso pode ser o diferencial que o seu concorrente não tem. É preciso pensar que mesmo sendo uma solução um pouco mais cara que uma simples hospedagem, os benefícios são muito maiores. Além disso, um ambiente estável pode ser um fator decisivo para que seus clientes continuem com você.

As empresas cada vez mais estão abandonando o fardo de ter que cuidar de uma infraestrutura ro-busta e complexa e migrando para o Cloud, onde todo esse esforço é resumido em alguns poucos cliques. Elas estão fazendo isso porque veem nessa tecnologia uma oportunidade de poupar recur-sos e investir no que realmente importa para seus clientes: o produto.

Conclusão14

Page 14: A experiência real de DEVS MIGRANDOinboundlocaweb.jelasticlw.com.br/ebook/A_experiencia...Cloud porque acha que vai ter muita autonomia e vai ter que configurar muita coisa no servidor,

Nosso propósito é fazer negócios nascerem e prosperarem por meio da tecnologia

Desde a nossa fundação, em 1998, temos crescido com maturidade e hoje contamos com uma moderna e segura infraestrutura, um time de mais de 1.000 funcionários e muitos parceiros alinhados

com nossos objetivos. Oferecemos um portfólio completo de serviços de internet e atendimento especializado com foco no sucesso dos nossos clientes.

Empreendedorismo e paixão por tecnologia

BLOG