Integração de aplicações e serviços utilizando computação na nuvem com a plataforma Microsoft Windows Azure Ricardo Linhares Orientador: Paulo Fernando da Silva
1. Introdução 2. Objetivos da pesquisa 3. Fundamentação teórica 4. Especificação 5. Operacionalidade 6. Conclusão 7. Extensões Roteiro
Otimização na prestação de serviços; Computação escalável Pagamento por uso; Tecnologia Microsoft para hospedagem. Introdução
Desenvolver um protótipo que utilize a plataforma Windows Azure para efetuar computação na nuvem de forma escalável Objetivos
Computação na nuvem Modelos de serviços Windows Azure Azure Storage Windows Communication Foundation Fundamentação teórica
Cria uma ilusão da disponibilidade de recursos infinitos, acessáveis sob demanda; Elimina a necessidade de adquirir e provisionar recursos antecipadamente; Oferece elasticidade, permitindo diminuir ou aumentar a capacidade de computação dinamicamente; Pagamento é Pay-per-use. Computação na nuvem
SaaS – Software as a Service PaaS – Plataform as a Service IaaS – Infrastrucutre as a Service Modelos de serviços
Oferta de PaaS da Microsoft; Ambiente virtualizado – Windows 2008 Server R2; Worker Role; Web Role Windows Azure
Alta escalabilidade e alta disponibilidade Redundância; Várias estruturas: Azure Blob – armazenamento de qualquer tipo Azure Queue – fila de mensagens Azure Table – armazenamento estruturado Azure storage
Unificação de tecnologias Microsoft para programação distribuída: COM+ MSQM- Message Queue Enterprise Services .NET Remoting Web Services Windows Communication Foundation (WCF)
Especificação
Executor de Testes
Implementar um web service e um protótipo que executem na nuvem através do Windows Azure; O processamento deverá ser assíncrono, sendo gerenciado através de uma fila de mensagens; Deverá ser alocado novos worker roles para processamento conforme tamanho da fila de mensagens. Principais requisitos
Cliente de Testes
Servidor de Requisições
Executor de Teste
Monitor de Testes
Cliente de Testes e Servidor de Requisições
Monitor de Testes
Executor de Testes
Linguagem de programação C# com Framework.NET 4.0; Ambiente de desenvolvimento Visual Studio 2010; WCF (Windows Communication Foundation); Windows Forms; Azure SDK (Source Development KIT) 1.4 Tecnologias e ferramentas utilizadas
Operacionalidade
Cliente de Testes – solicitações enviadas
Cliente de Testes – solicitações processadas
Monitor de Testes
Resultados
Comparações de resultados 20 Executores3 a 4 executores
WASABi CloudAV Trabalhos correlatos
Os objetivos da pesquisa foram atingidos; Desenvolvido um serviço em WCF e publicado no Windows Azure; Desenvolvido um protótipo que efetua computação na nuvem; Demonstrada vantagens da computação na nuvem com Windows Azure. Conclusão
Desenvolvimento de novos algoritmos para auxiliar na análise de escalabilidade; Processamento de algoritmos em paralelo; Desenvolvimento de aplicações que utilizem sessões com estado, utilizando o serviço Azure Cache. Extensões
Demonstração do protótipo