segunda-feira, 26 de julho de 2010

Escalabilidade "built-in"

Num momento em que muito se fala de Cloud Services, Cloud Computing, e em que começam a surgir muitas empresas a apostar forte nessa área, seria tolice não apanhar a onda e não analisar mais a fundo as várias opções actualmente existentes no mercado que podem suportar as necessidades infra-estruturais de um novo serviço web.

Em primeiro lugar, é de salientar que a utilização dos cloud services pode trazer grandes benefícios para um empreendedor em TIC:
- Redução das preocupações e do tempo despendido na gestão da infra-estutura de hardware e software (o fornecedor do serviço é que terá de ter esse trabalho); 
- Acesso a soluções profissionais (backups, storage, largura de banda...) com baixo custo, devido à larga escala;
- Modelo pay-as-you-go, sem necessidades de grande investimento inicial;
- Escalabilidade "built-in" = Fácil capacidade de expansão da infra-estrutura.

No entanto, nem todos os serviços "cloud" são iguais e muitos deles nem passam de uma mera virtualização de servidores físicos em servidores virtuais, o que dificulta um bocado a sua aplicabilidade, pois continuam a existir limites virtuais de memória, processamento, espaço em disco... e todas as preocupações de escalabilidade continuam presentes: necessidade de load-balancers,  algoritmos tolerantes a faltas... e por aí fora.

Em http://www.informationweek.com/news/software/hosted/showArticle.jhtml?articleID=210602537 são listadas algumas startups que estão a apostar nesta onda. Algumas delas, como a Kaavo ou a Elastra nem sequer são donos de uma cloud própria mas sim fornecem serviços de integração e disaster recovery para outras clouds como a da Amazon ou Google.

Os tipos de serviços disponibilizados por uma cloud são, geralmente:
- criação de máquinas virtuais;
- espaço em disco infinito;
- bases de dados estruturadas; 
- filas de mensagens;
- servidor web escalável até milhões de utilizadores em simultâneo;
- CDNs (Content Delivery Networks) que permite a disponibilização de conteúdos (ficheiros, vídeos, etc..) a partir de vários DataCenters espalhados pelo globo e sem perda de performance devido aos acessos em simultâneo dos vários utilizadores.

Estes serviços são pagos mensalmente (ex: $0.15 por GB por mês), tendo em conta a quantidade de dados transferida para dentro e fora da nossa conta, bem como a quantidade de dados guardados em disco. Apenas os servidores virtuais é que têm um modelo diferente, semelhante aos planos de alojamento web habituais: x por mês fixo, com limites de tráfego e disco.

Como escolher o fornecedor adequado para a nossa solução? 
Ou melhor, a pergunta pode até ser: 
Como definir a solução adequada tendo em conta os serviços prestados pelo fornecedor escolhido?

A forma mais correcta de responder a estas perguntas, passa por conhecer os vários serviços e planos de preços, bem como as limitações apresentadas caso a caso.

A resposta não é fácil. No entanto, vou tentar esclarecer alguns conceitos no próximo post para se delinear uma estratégia de adopção da cloud para o nosso projecto. 

Diverte-te!

Sem comentários:

Enviar um comentário