Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
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
Roteiro
∗ 3. Fundamentação teórica∗ 4. Especificação∗ 5. Operacionalidade∗ 6. Conclusão∗ 7. Extensões
∗ Otimização na prestação de serviços;
∗ Computação escalável
Introdução
∗ Computação escalável
∗ Pagamento por uso;
∗ Tecnologia Microsoft para hospedagem.
∗ Desenvolver um protótipo que utilize a plataforma Windows Azure para efetuar computação na nuvem
Objetivos
Windows Azure para efetuar computação na nuvem de forma escalável
∗ Computação na nuvem
∗
Fundamentação teórica
∗ Modelos de serviços
∗ Windows Azure
∗ Azure Storage
∗ Windows Communication Foundation
∗ Cria uma ilusão da disponibilidade de recursos infinitos, acessáveis sob demanda;
Computação na nuvem
∗ 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.
∗ SaaS – Software as a Service
∗ PaaS – Plataform as a Service
Modelos de serviços
∗ PaaS – Plataform as a Service
∗ IaaS – Infrastrucutre as a Service
∗ Oferta de PaaS da Microsoft;
Windows Azure
∗ Ambiente virtualizado – Windows 2008 Server R2;
∗ Worker Role;
∗ Web Role
∗ Alta escalabilidade e alta disponibilidade
∗ Redundância;
Azure storage
∗ Redundância;
∗ Várias estruturas:
∗ Azure Blob – armazenamento de qualquer tipo
∗ Azure Queue – fila de mensagens
∗ Azure Table – armazenamento estruturado
∗ Unificação de tecnologias Microsoft para programação distribuída:
Windows Communication Foundation (WCF)
programação distribuída:
∗ COM+
∗ MSQM- Message Queue
∗ Enterprise Services
∗ .NET Remoting
∗ Web Services
Especificação
Executor de Testes
∗ Implementar um web service e um protótipo que executem na nuvem através do Windows Azure;
Principais requisitos
∗ 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.
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;
Tecnologias e ferramentas utilizadas
∗ Ambiente de desenvolvimento Visual Studio 2010;
∗ WCF (Windows Communication Foundation);
∗ Windows Forms;
∗ Azure SDK (Source Development KIT) 1.4
Operacionalidade
Cliente de Testes – solicitações enviadas
Cliente de Testes – solicitações processadas
Monitor de Testes
Resultados
Comparações de resultados
20 Executores 3 a 4 executores
∗ WASABi
Trabalhos correlatos
∗ CloudAV
∗ Os objetivos da pesquisa foram atingidos;
∗ Desenvolvido um serviço em WCF e publicado no
Conclusão
∗ 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.
∗ Desenvolvimento de novos algoritmos para auxiliar na análise de escalabilidade;
Extensões
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.
Demonstração do protótipo