TechEd 2011 – Migrando uma aplicação para Windows Azure
Uma das palestras mais interessantes e práticas que assisti no TechEd 2011 foi a palestra “Migrando uma aplicação para Windows Azure” do Rogério Cordeiro. (http://blogs.msdn.com/b/rogerioc/)
Nesta palestra ele descreveu quais são os passos necessários para fazer uma migração bem sucedida e quais são os pontos de atenção relevantes.
Segue abaixo as etapas necessárias migrar uma aplicação Web comum.
Mas.. primeiro, vamos definir que uma aplicação Web comum significa que este projeto contenha as seguintes características:
– Um projeto do tipo Web com páginas, css, javascript e imagens.
– Este projeto deve acessar um repositório de arquivos para upload/download.
– Este projeto deve também acessar uma base de dados SQL Server.
Ok?…
1 – Para começar a desenvolver para Azure você precisa de um SDK específico para o mesmo.
- Baixe e instale o Windows Azure SDK e Tools (http://www.microsoft.com/download/en/details.aspx?id=15658).
- Adicione um projeto do tipo Windows Azure na solution.
- Referencie a WebRole do projeto adicionado para a sua aplicação web comum.
2 – A segunda etapa da migração para Windows Azure é fazer a migração da Base de Dados.
- Crie uma conta no SQL Azure.
- Baixe o programa “SQL Migration Azure Wizard” (http://sqlazuremw.codeplex.com/).
Esta ferramenta analisa o seu script atual do Banco de Dados e demonstra os
itens que poderiam não funcionar no Azure. A partir daí basta você ir corrigindo
o script. - Rode o script no SQL Azure.
- Aponte a connection String do seu sistema para o SQL Azure.
3 – A terceira etapa é migrar o repositório de arquivos. (utilizado para download/upload)
- Crie uma conta Windows Azure Storage.
- Altere a codificação do seu projeto para que a partir de agora comesse a
utilizar o Blob do Azure ao invés do File System do Windows.
4 – Testando Localmente
- Tecle “F5” (debug) que um emulador do Windows Azure irá subir localmente simulando a o comportamento real da aplicação nas nuvens.
5 – Publicar a aplicação Web
- Crie um host no Windows Azure.
- Publique a aplicação clicando em Publish que fica dentro do menu suspenso do projeto Windows Azure adicionado.
- Configure sua conta de acesso ao Windows Azure.
- Você pode verificar o status do deploy em uma nova janela do Visual Studio que aparecera enquanto o mesmo estiver sendo realizado
6 – Testar
- Caso tudo funcione corretamente, um link de acesso para a sua aplicação nas nuvens será disponibilizado na janela de status do deploy.
- Acesse sua aplicação e Teste.
Estes passos descritos acima foram muito uteis em uma recente migração que tive que fazer aqui na empresa. E os segui rigorosamente e tudo ocorreu muito bem.
Destaco aqui alguns pontos que devem ser dados maior atenção quando migrar uma aplicação para o Azure.
- Banco de Dados: Nem todas as funções do SQL Server são suportadas pelo SQL Azure.
- Variáveis de Sessão: Assim como em WebFarm, o uso de variáveis de sessão não é recomendado.
Segue abaixo alguns recursos interessantes:
- Training Kit do Windows Azure (http://www.microsoft.com/download/en/details.aspx?id=8396) – Contem exemplos passo a passo de Azure.
- Moving Applications to the Cloud on the Microsoft Windows Azure Platform. (Microsoft Patterns & Practices) (http://msdn.microsoft.com/en-us/library/ff728592.aspx) – Contem códigos, vídeos, Labs para ajudar na sua migração.
- Developing Applications for the Cloud on the Microsoft Windows Azure Platform. (Microsoft Patterns & Practices) (http://msdn.microsoft.com/en-us/library/ff966499.aspx) – Contem código, vídeos, Labs sobre desenvolvimento de aplicações nas Nuvens.
Faça download da apresentação clicando aqui.
É isso aí.