Plataforma Nuvem

Aplicativos baseados na Internet

Arquitetura do exemplo Guestbook do Azure

with one comment

Um dos melhores recursos de treinamento para aprender a desenvolver para a plataforma Azure é o Windows Azure Platform Training Kit. Ele é um conjunto de tutoriais, apresentações e exemplos que ajudam a aprender como utilizar o Windows Azure.

O primeiro tutorial, chamado Introduction to Windows Azure, ensina como criar um aplicativo do tipo “livro de visitantes”, onde os usuários podem deixar comentários com imagens anexadas, e ver os comentários que outros usuários deixaram.

Este aplicativo é implementado utilizando um Web Role para a interface web, o Table Service para armazenar os registros dos comentários, o Blob Service para armazenar as imagens originais e reduzidas, um Worker Role para rodar um serviço para criar as miniaturas das imagens em segundo plano, e o Queue Service para que o Web Role indique quais imagens o Worker Role deve processar.

O fluxo acontece em três etapas separadas. Na primeira etapa, identificada pelas linhas azuis, o usuário insere um novo comentário com uma imagem. O Web Role salva esta imagem original no Blob Service, cria um registro para o comentário no Table Service e insere uma mensagem no Queue Service indicando qual é o registro que deve ser processado. O Web Role encerra aqui o seu trabalho e mostra a página atualizada para o usuário (ainda sem a miniatura).

Na segunda etapa, identificada pelas linhas rosa, que acontece independente da primeira, o Worker Role obtém a próxima mensagem da fila do Queue Service, busca a imagem original no Blob Service, gera uma miniatura e a salva também no Blob Service, e atualiza o registro no Table Service indicando a URL da miniatura gerada.

A terceira etapa, identificada pelas linhas verdes, é quando um usuário qualquer acessa a página do livro de visitantes. O Web Role busca a lista de comentários por ordem de data e monta a página de resultado com estes comentários. O browser do usuário busca as imagens diretamente do Blob Service, através de uma URL.

Este aplicativo de exemplo demonstra muitos dos princípios arquiteturais de aplicativos em nuvem, como aplicativos Web que não mantêm estado (Web Role), repositórios de dados escaláveis e não relacionais (Table Service), repositórios de dados binários (Blob Service), processamento assíncrono através de serviços de enfileiramento de mensagens (Queue Service e Worker Role).

Esta é uma arquitetura escalável, elástica, tolerante a falhas e simples de entender, sem excesso de complexidade. Uma excelente introdução ao desenvolvimento de aplicativos em plataforma nuvem.

Written by Fernando Correia

17/abr/2011 às 13:29

Publicado em Geral

Tagged with ,

Uma resposta

Subscribe to comments with RSS.

  1. Muito legal!!
    Nos mantenha informado de seus posts…
    Azure tem mto a ser explorado.

    Eleriane Cristina Costa

    18/abr/2011 at 15:47


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s