Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 White paper



Documentos relacionados
Provedor de serviços de software oferece solução econômica de gestão eletrônica

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

Google Drive. Passos. Configurando o Google Drive

OneDrive: saiba como usar a nuvem da Microsoft

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V

Forneça a próxima onda de inovações empresariais com o Open Network Environment

Satélite. Manual de instalação e configuração. CENPECT Informática cenpect@cenpect.com.br

Operador de Computador. Informática Básica

Polycom RealPresence Content Sharing Suite Guia rápido do usuário

Procedimentos para Reinstalação do Sisloc

Manual de Utilização do Sistema GRServer Cam on-line (Gerenciamento de Câmeras On-line)

Aumente sua velocidade e flexibilidade com a implantação da nuvem gerenciada de software da SAP

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

02 - Usando o SiteMaster - Informações importantes

Polycom RealPresence Content Sharing Suite Guia rápido do usuário

JOOPP O construtor de sites mais rápido do mundo!

Guia de Início Rápido

Visão geral híbrida de Serviços Corporativos de Conectividade do SharePoint 2013

Roteamento e Comutação

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Qlik Sense Cloud. Qlik Sense Copyright QlikTech International AB. Todos os direitos reservados.

Manual AGENDA DE BACKUP

Especificações da oferta Gerenciamento de dispositivos distribuídos: Gerenciamento de ativos

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Desenvolvendo Websites com PHP

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

Guia de Início Rápido

Channel. Visão Geral e Navegação. Tutorial. Atualizado com a versão 3.9

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Procedimentos para Instalação do Sisloc

Guia de Início Rápido

Na tela dele, clique no sinal de + ao lado do nome do seu computador, para expandi-lo. A seguir, expanda também o item "Sites da web".

Manual de Instalação. SafeSign Standard (Para MAC OS 10.7)

Instalando o IIS 7 no Windows Server 2008

Instalando o IIS 7 no Windows Server 2008

Versão /10. Xerox ColorQube 9301/9302/9303 Serviços de Internet

Noções de. Microsoft SQL Server. Microsoft SQL Server

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Planejando o aplicativo

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Guia do usuário do PrintMe Mobile 3.0

ADMINISTRAÇÃO DE SISTEMAS OPERACIONAIS SERVIÇOS DE ACESSO REMOTO (TELNET E TERMINAL SERVICES) Professor Carlos Muniz

Introdução a listas - Windows SharePoint Services - Microsoft Office Online

Sumário INTRODUÇÃO Acesso ao Ambiente do Aluno Ferramentas e Configurações Ver Perfil Modificar Perfil...

Oficina de Inclusão Tecnológica Windows Live Skydrive

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13

Gerencie a força de trabalho móvel, sem a complexidade e o custo de uma instalação on-premise

Plataforma na nuvem do CA AppLogic para aplicativos corporativos

Capture Pro Software. Introdução. A-61640_pt-br

Configuração do Servidor DHCP no Windows Server 2003

SISTEMAS OPERACIONAIS LIVRES GERENCIAMENTO DE SERVIÇOS NO WINDOWS. Professor Carlos Muniz

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

Lotus Notes 8.5 para o Office 365 para empresas

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Como configurar s nos celulares. Ebook. Como configurar s no seu celular. W3alpha - Desenvolvimento e hospedagem na internet

INTRODUÇÃO AO MICROSOFT DYNAMICS AX 4.0 FINANCEIRO I

QUALIDATA Soluções em Informática. Módulo CIEE com convênio empresas

Manual AGENDA DE BACKUP

PÚBLICA, PRIVADA OU HÍBRIDA: QUAL É A MELHOR NUVEM PARA SEUS APLICATIVOS?

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14

Guia de início rápido do Powersuite

MANUAL DO ANIMAIL Terti Software

MDaemon GroupWare. Versão 1 Manual do Usuário. plugin para o Microsoft Outlook. Trabalhe em Equipe Usando o Outlook e o MDaemon

E-books. Guia para Facebook Ads. Sebrae

Serviços de produtividade de nuvem hospedados pela Microsoft Ferramentas de qualidade empresarial a um preço acessível Sempre atualizado Office,

DELL POWERVAULT SÉRIE MD ARMAZENAMENTO DE DADOS MODULAR ARMAZENAMENTO DE DADOS DELL POWERVAULT SÉRIE MD

Guia de Início Rápido

Portal Sindical. Manual Operacional Empresas/Escritórios

1 Sumário O Easy Chat Conceitos Perfil Categoria Instalação O Aplicativo HTML...

MANUAL DO GERENCIADOR ESCOLAR WEB

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

1. Quem somos nós? A AGI Soluções nasceu em Belo Horizonte (BH), com a simples missão de entregar serviços de TI de forma rápida e com alta qualidade.

Guia. PDA e SmartPhones. Windows Mobile, Pocket PC e CE.

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Manual do Usuário Certificação

Manual do Painel Administrativo

1 Inicie um novo. Guia de Referência Rápida de Gerenciamento de Projeto para o Project projeto

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo

Manual de utilização do sistema de envio de sms marketing e corporativo da AGENCIA GLOBO. V

Por que Office 365? Office 365 Por que usar?

O Windows 7 é um sistema operacional desenvolvido pela Microsoft.

Manual do Sistema "Vida Controle de Contatos" Editorial Brazil Informatica

VERIFIQUE SE SEUS SITES ESTÃO PRONTOS PARA O BLACK FRIDAY 11 MANEIRAS DE ACABAR COM OS PROBLEMAS DE DESEMPENHO

Entendendo como funciona o NAT

Manual Xerox capture EMBRATEL

2 de maio de Remote Scan

Como acessar o novo webmail da Educação? Manual do Usuário. 15/9/2009 Gerencia de Suporte, Redes e Novas Tecnologias Claudia M.S.

AULA 06 CRIAÇÃO DE USUÁRIOS

TRABALHO COM GRANDES MONTAGENS

Usar o Office 365 no iphone ou ipad

Dell Premier. Guia de Compras e Pedidos. Fazendo Login na sua Página Premier. Três formas de comprar

Manual das funcionalidades Webmail AASP

INSTALAÇÃO DO MICROSOFT WINDOWS SHAREPOINT SERVICES 2.0

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

GUIA BÁSICO DA SALA VIRTUAL

Transcrição:

Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 White paper

Publicado em fevereiro de 2011 Índice Introdução... 1 Um caso para a computação em nuvem... 2 SaaS, IaaS e PaaS... 4 Apresentando o Windows Azure... 5 Olá nuvem!... 6 Explorando o aplicativo de amostra da Green Fee Broker... 6 Desenvolvendo para o Windows Azure com o Visual Studio 2010... 7 Implantação no Windows Azure... 15 Conclusão... 20 Sobre o autor:... 20 Apêndice... 21 Serviço de computação do Windows Azure... 21 Armazenamento do Windows Azure... 22 Segurança na nuvem... 22

Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 White Paper Publicado em fevereiro de 2011 (estilo = Publicado) Para obter as informações mais recentes, visite: http://msdn.microsoft.com/vstudio Introdução Organizações de todos os portes sofrem pressão constante para fazer mais com menos. Oferecer soluções que atendam a essas demandas e ainda reduzam os custos operacionais, maximizando a eficiência, não é apenas altamente desejável: é uma necessidade. E, além disso, espera-se que os provedores de soluções em tecnologia da informação garantam o fornecimento do serviço ao mesmo tempo em que crescem dinamicamente com as necessidades dos negócios e minimizam os custos. Essa proposta não é nada fácil. As organizações precisam ser cuidadosas ao selecionar a infraestrutura e uma plataforma que ofereça produtividade operacional e de desenvolvimento. Essas são escolhas que precisam atender às necessidades atuais e futuras do negócio. Só que planejar investimentos baseando-se em custos imprevisíveis de plataforma e infraestrutura pode ser uma tarefa hercúlea. Em resposta a esses desafios, chega uma tecnologia que pode mudar tudo, conhecida como computação em nuvem. A Wikipédia define a computação em nuvem como a evolução natural da ampla adoção da virtualização, da arquitetura voltada para serviços e da computação utilitária. Os detalhes são invisíveis aos consumidores, que não precisam mais conhecer profundamente nem controlar a infraestrutura de tecnologia na nuvem responsável por tudo. O Windows Azure é uma oferta de computação em nuvem do tipo Plataforma como um Serviço (PaaS), que forma a base da plataforma de serviços Azure da Microsoft. O foco das ofertas de PaaS está em permitir que os clientes desenvolvam, implantem e operem aplicativos sem ter que se concentrar na infraestrutura subjacente, nos servidores ou no gerenciamento das operações em andamento. Os desenvolvedores escrevem aplicativos para o Windows Azure com o Microsoft.NET, um framework de criação de aplicativos e serviços para desktops, dispositivos móveis, a Web e a nuvem. O Windows Azure tem suporte a várias linguagens de programação que não são da Microsoft, como PHP, Java e Ruby, mas o Microsoft.NET oferece diversas opções de linguagens aos desenvolvedores, dentre as quais as mais comuns são o Visual C# e o Visual Basic para a criação Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 1

de aplicativos em.net, além do ASP.NET, framework principal da Microsoft para a criação de aplicativos Web. Esses aplicativos podem ser criados com um simples editor de textos e com ferramentas de linha de comando para cuidar da compilação, mas o Visual Studio 2010 é o principal ambiente de desenvolvimento integrado (IDE) para a criação de aplicativos.net de implantação local e na nuvem. Um caso para a computação em nuvem Fazer estimativas e oferecer infraestrutura sai caro, porque é difícil prever as necessidades elásticas de um aplicativo ou serviço ao longo do tempo. Mesmo deixando o planejamento da capacidade por conta de especialistas, as necessidades de um negócio podem se expandir e contrair abruptamente, já que as demandas por produtos e serviços costumam ser elásticas. O resultado é que, muitas vezes, as empresas precisam optar entre nivelar por baixo ou por cima na hora de adquirir infraestrutura. Nivelar por baixo apresenta um risco bastante realista de falha no fornecimento do serviço, e nivelar por cima pode sair tremendamente caro. Como vemos na figura 1, muitas empresas ficam no meio termo, o que implica em um incessante processo de aquisições e em um grande aumento de despesas, conforme um servidor após o outro vai desaparecendo em um buraco negro. Isso não só provoca um escoamento dos orçamentos operacionais do ponto de vista do hardware, como causa uma grande perda de tempo no provisionamento e na implantação de servidores, o que também sai caro e prejudica a capacidade de implantar recursos em atividades geradoras de receita que sejam mais tangíveis. Figura 1: o eterno desencontro entre oferta e demanda de capacidades de TI. Uma organização precisa extrapolar os investimentos na plataforma e na infraestrutura para garantir sua capacidade de dimensionar de acordo com as necessidades (que estão sempre mudando) de seu negócio? Quanto custa essa Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 2

capacidade excessiva que fica sem uso por um dado período de tempo? Ou pior: com orçamentos cada vez mais agressivos, quais são as consequências sobre a identidade da marca e a experiência do cliente decorrentes de um investimento subestimado e da introdução do risco de não se conseguir atender às necessidades operacionais do negócio? A computação em nuvem é revolucionária porque proporciona a consumação da infraestrutura, da plataforma e do software como uma utilidade, ou um serviço para as massas. Com a computação em nuvem, as empresas que são especialistas no fornecimento de infraestrutura, plataforma e software em caixa realizam maciços investimentos em data centers e infraestrutura redundante para oferecer essas capacidades como serviços comuns, que sua empresa pode consumir conforme a necessidade. Assim como acontece com suas utilidades domésticas, sua empresa estende um aplicativo para que ele apenas se conecte à nuvem, tirando proveito da escala e da redundância maciças por uma taxa pré-definida, mensurada ou por usuário. O resultado é um alinhamento muito melhor da capacidade de TI às necessidades elásticas do negócio, como mostra a figura 2. Figura 2: alinhamento da capacidade às necessidades elásticas do negócio. Neste white paper, você descobrirá como se conectar ao Windows Azure usando o Visual Studio 2010, acompanhando o processo de estender um aplicativo existente para a nuvem. Antes de começarmos, vamos conversar sobre as três maneiras mais comuns que os provedores de nuvem, incluindo a Microsoft, usam para empacotar seus produtos de computação em nuvem. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 3

SaaS, IaaS e PaaS A promessa da nuvem é a escolha, e há várias empresas oferecendo diversos serviços em nuvem empacotados como Software como um Serviço (SaaS), Infraestrutura como um Serviço (IaaS) ou Plataforma como um Serviço (PaaS), conforme resume a figura 3. Software como um Serviço (SaaS) é exatamente o que parece ser. As empresas criam pacotes comerciais de software e os disponibilizam de maneira prática na Internet. O SaaS pode proporcionar uma economia expressiva às organizações que querem tirar proveito de ofertas empacotadas, como pacotes de software de gerenciamento de relacionamento com o cliente (CRM), permitindo maior acesso ao software sem a preocupação com os requisitos do sistema ou outros prérequisitos. A Infraestrutura como um Serviço (IaaS) é um tipo de serviço de nuvem que oferece o gerenciamento, a hospedagem e o provisionamento da infraestrutura de computadores. Em vez de adquirir hardware físico, como servidores e PCs, instalar sistemas operacionais, empilhar servidores e conectar a redes, os usuários da IaaS só precisam consumir instâncias de sistemas operacionais, disponibilizadas prontamente ao alcance de seus dedos. Tanto o SaaS quanto a IaaS têm seu espaço na computação em nuvem, mas para muitas organizações, apenas soluções altamente personalizadas têm utilidade. A abstração da Plataforma como um Serviço (PaaS) vai além da proporcionada pela IaaS, oferecendo uma plataforma sobre a qual é possível criar software personalizado que irá permitir às organizações desenvolver, implantar e operar aplicativos sem a necessidade de se concentrar na infraestrutura subjacente, nos servidores ou no gerenciamento das operações em andamento. Com a PaaS, você não se concentra na infraestrutura. Você cria seus aplicativos para uma plataforma qualquer, como.net, e só precisa implantar seu software em um contêiner lógico. Isso dá fim às confusas tarefas de implantação e disponibiliza seu aplicativo para uso em qualquer nível de escalabilidade e redundância necessário. A Microsoft oferece às empresas e aos desenvolvedores a maior variedade de escolhas para seu investimento em computação em nuvem, porque é a única empresa que oferece produtos SaaS, IaaS e PaaS. A Microsoft se diferencia da Amazon, do Google e de outros concorrentes em um nível fundamental, por oferecer aos clientes a flexibilidade de usar tecnologia local, tecnologia na nuvem ou ambas, como parte da estratégia de software mais serviços (S+S) da Microsoft. Neste documento, vamos nos concentrar no Windows Azure, que em seu núcleo oferece a plataforma.net como um serviço (PaaS) sobre o qual podem ser criados aplicativos personalizados e altamente dinâmicos em escala de Internet. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 4

Figura 3: produtos comuns oferecidos por provedores de nuvem. Apresentando o Windows Azure O Windows Azure é o sistema operacional da Microsoft para a nuvem, e forma a base da plataforma Windows Azure da Microsoft. Como é uma oferta PaaS, o Windows Azure abstrai os detalhes da hospedagem, os componentes em tempo de execução e o gerenciamento, ajudando você a concentrar seu tempo e seus recursos na criação de software que gere valor corporativo. Além de oferecer um sistema operacional para a nuvem, a plataforma Windows Azure traz produtos adicionais em nuvem, incluindo AppFabric, SQL Azure, CDN e MarketPlace. Cada uma dessas tecnologias enriquece a experiência de desenvolvimento e o alcance dos aplicativos implantados no Windows Azure, no meio corporativo, localmente, na nuvem ou em qualquer combinação destes. AppFabric é um conjunto integrado de serviços de hospedagem, gerenciamento, conexão e proteção de seus aplicativos e de aplicativos de terceiros implantados tanto no local quanto na nuvem. Com ele, é possível conectar e dimensionar seus aplicativos, estejam eles em execução no local, na nuvem ou em ambos. SQL Azure é um serviço de banco de dados relacional (RDBMS) baseado na nuvem, criado com base em tecnologias SQL Server. Ele oferece muitas das capacidades do SQL Server, com a facilidade da hospedagem na nuvem pela Microsoft. Com o SQL Azure, basta apontar o aplicativo para o banco de dados: o SQL Azure cuida do resto. CDN é uma rede de entrega de conteúdo que distribui geograficamente cópias de dados usados com frequência, como arquivos, imagens e vídeos, de forma que eles estejam o mais próximo possível dos usuários de seus aplicativos que consomem essa mídia. Isso ajuda a garantir que o conteúdo do qual seu aplicativo precisa possa ser acessado o mais rapidamente possível. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 5

Marketplace é uma parada única para a descoberta de feeds de dados e outros aplicativos que possam ser usados para levar seus aplicativos para o mercado de forma mais fácil e rápida. Por exemplo, o DataMarket oferece feeds de dados que podem ser integrados ao seu aplicativo, poupando o tempo e o dinheiro que você investiria para juntar ou localizar esses arquivos. A plataforma Windows Azure tem muitos recursos úteis e empolgantes, mas este documento vai se concentrar em explicar melhor o Windows Azure e na facilidade de se criar novos aplicativos ou estender aplicativos existentes para o Windows Azure com o Visual Studio 2010. Você vai descobrir como, juntos, eles proporcionam um ambiente de desenvolvimento, tempo de execução e gerenciamento com suporte à capacidade de desenvolver, implantar e executar seus aplicativos em escala de Internet. Para aprender mais sobre o serviço de computação do Windows Azure, o armazenamento do Windows Azure e a segurança na nuvem, consulte o apêndice deste documento. Olá nuvem! Explorando o aplicativo de amostra da Green Fee Broker Vamos começar analisando uma empresa start-up que há pouco tempo começou a ter problemas com o crescimento. Graças à Green Fee Broker, os amantes do golfe podem jogar em seus campos favoritos pelos menores preços possíveis. O golfista instala o aplicativo My Green Fee Broker em seu smartphone, escolhe uma lista de campos de golfe participantes e assina alertas que o avisam quando um campo registrado publica um horário disponível para jogo. O interessado em agendar um horário pode enviar sua oferta diretamente pelo smartphone ou fazer logon no My Green Fee Broker Online, um site que também permite enviar solicitações de agendamento ao Green Fee Broker Service por qualquer PC. A partir daí, o Green Fee Broker Service pesquisa pelas menores taxas publicadas disponíveis, agenda o campo e notifica o horário ao golfista via alerta no smartphone e/ou via notificação por email. O bom do Green Fee Broker Service é que ele está sempre disponível. Ele expõe uma API de serviço Web que pode ser consumida pelo aplicativo para smartphones My Green Fee Broker ou pelo Green Fee Broker online (e também por propriedades de marca na Web para campos de golfe específicos). Com isso, o golfista pode usar a API do Fee Broker Service para fazer uma solicitação de agendamento sob demanda, ou em resposta a um alerta no smartphone. No entanto, a maior força do produto rapidamente foi se tornando seu calcanhar de Aquiles. O sucesso das campanhas de marketing e o boca a boca puseram à prova a capacidade da empresa de garantir que o mecanismo central, que expõe a API para gerenciamento de solicitações de clientes e cadastro de novos clientes, permanecesse disponível. O volume de tráfego atingindo a API do Green Fee Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 6

Broker Service excedeu a capacidade da infraestrutura disponível, e os eventuais travamentos do aplicativo passaram a ameaçar a marca que a start-up deu tão duro para construir. Como adicionar servidores e lidar com a complexidade da configuração de clusters e fazendas Web não era uma opção, a empresa foi buscar a solução na nuvem. Uma opção era mover o Green Fee Broker Service de sua instalação local para um provedor IaaS. Embora essa opção certamente fosse mais atraente do que a situação atual, instalar todos os componentes necessários à plataforma e implantar o serviço em instâncias com hospedagens múltiplas fugia bastante do foco do Green Fee Broker, que era simplesmente o de estar sempre disponível. Além disso, o tempo e os gastos com o gerenciamento independente de cada instância seriam melhor investidos em atividades que aumentassem a produção diretamente. Após algumas discussões internas, a equipe de gerência de desenvolvimento decidiu que a API do Green Fee Broker Service era perfeita para implantação no Windows Azure. Sendo essencialmente um mecanismo de intermediação exposto como um serviço Web via HTTP para os vários clientes que fazem uso da API, o serviço de intermediação não só precisa estar sempre disponível como também tem que ser capaz de dimensionar de acordo com as crescentes demandas desta start-up bem-sucedida. Em vez de continuar caindo na armadilha da escada que mostramos na figura 1, o Windows Azure oferece à Green Fee Broker ferramentas que alinham a capacidade às necessidades precisas de seus clientes, conforme discutido originalmente na figura 2. Como a equipe já cria aplicativos no.net Framework, a curva de aprendizado é mínima e é possível tirar proveito das ferramentas e habilidades que a equipe já tem, com pouca ou nenhuma alteração no código. Além disso, o Windows Azure não exige alto investimento inicial, e as despesas de capital podem ser convertidas em despesas operacionais. Como a start-up só precisa pagar pelo que usa, ela ganha a flexibilidade e a capacidade de testar novas ideias sem ter que fazer um grande investimento inicial na infraestrutura que alimenta a inovação. Todos esses benefícios do Windows Azure permitem à empresa manter o foco na criação e na inovação de seu produto, na mesma plataforma e com as mesmas ferramentas que ela usava para criar qualquer outro aplicativo para.net. Desenvolvendo para o Windows Azure com o Visual Studio 2010 O Visual Studio é um ambiente de desenvolvimento integrado (IDE) para o desenvolvimento de aplicativos no Microsoft.NET Framework. O Visual Studio 2010 traz um conjunto de ferramentas de grande importância para desenvolvimento, teste e manutenção de aplicativos, tanto para implantação local quanto na nuvem. Vou mostrar como estender um aplicativo existente para implantação no Windows Azure com o Visual Studio, adicionando um projeto do Windows Azure e associando-o a uma função da Web. Depois, vou demonstrar como é simples usar o Visual Studio 2010 para testar um aplicativo de nuvem localmente e empacotá-lo para implantação no Windows Azure. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 7

Explorando o Green Fee Broker Service O Green Fee Broker Service é um serviço Web criado com o Windows Communication Foundation (WCF). O WCF é um framework de mensagens que faz parte do.net Framework, e permite compartilhar unidades modulares de funcionalidade (as classes) com outros aplicativos, expondo essas classes com funções especiais (os operadores). Essas operações podem ser executadas por aplicativos na mesma máquina, por máquinas diferentes na mesma rede ou em máquinas em redes totalmente diferentes. O Green Fee Broker Service expõe funcionalidade essencial via HTTP, incluindo operações de registro de novos campos de golfe e de recuperação de lista de campos de golfe participantes, e operações que permitem que os campos de golfe publiquem os horários disponíveis para jogo. O Visual Studio organiza as classes em contêineres especiais chamados de projetos, que por sua vez são agrupados em um contêiner especial chamado de solução. Uma solução pode ter um ou mais projetos que incluam uma ou mais classes. Depois de escrever código dentro das classes, você constrói uma solução que conduz uma série de verificações, garantindo que seu código é válido e segue as regras da linguagem. Se tudo correr bem, cada projeto vai ser empacotado em um conjunto, e esse conjunto pode ser executado diretamente ou chamado por um conjunto diferente que seja parte de um projeto (no caso de um serviço Web, um cliente envia mensagens para o conjunto por meio de um canal de comunicação para executá-lo). Por dentro da solução GreenFeeBroker está um projeto do Visual Studio 2010 chamado de BookingService. Neste caso, o projeto BookingService usa o modelo de aplicativo Web do WCF, que proporciona os arquivos básicos para a criação de um serviço Web do WCF. Em sua forma mais simples, o projeto de aplicativo Web do WCF consiste de dois arquivos, como mostra a figura 4: BrokerService.svc contém a implementação das operações mencionadas acima. Web.config contém a configuração básica, para hospedagem do serviço Web. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 8

Figura 4: o projeto Broker Service no gerenciador de soluções do Visual Studio 2010. O serviço Green Fee Broker expõe sua funcionalidade usando SOAP sobre o protocolo HTTP. O SOAP possibilita o uso de técnicas familiares orientadas a objetos no desenvolvimento do serviço, e automatiza os meios pelos quais o serviço troca e processa mensagens XML pela Internet. Seria tentador criar código que implementasse as operações do BrokerService diretamente no arquivo BrokerService.svc. No entanto, o aplicativo Green Fee Broker foi desenvolvido tendo em mente a separação dos assuntos, então cada unidade de funcionalidade sempre é independente da outra, mas elas funcionam juntas para realizar o trabalho. Sendo assim, o projeto contém classes adicionais que definem um campo de golfe (a classe Course ), isolam regras de negócios para operação com campos em uma classe chamada CourseManager e agrupam todas as operações de dados em uma classe comum chamada DataServiceAgent. A separação de assuntos é um princípio de design importante no desenvolvimento para execução local ou na nuvem, porque permite o foco em fatias de funcionalidade e gera um software mais fácil de entender e manter. E mais: ao desenvolver aplicativos que serão executados localmente e/ou na nuvem, a capacidade de gerenciar o estado e tomar decisões de implantação é simplificada sensivelmente pelo mapeamento de camadas lógicas a camadas físicas, como acontece com Web Roles, Worker Roles e serviços de armazenamento. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 9

Estendendo o Green Fee Broker Service para a nuvem Criar novos aplicativos e serviços para o Windows Azure com o Visual Studio 2010 é muito simples. Acredite se quiser, mas como o serviço foi criado em.net com o Visual Studio para hospedagem local, com exceção de uma pequena configuração ele já está pronto para ser hospedado no Windows Azure. Para fazer uma demonstração, vamos habilitar o aplicativo Green Fee Broker para o Windows Azure 1. Criando um projeto do Windows Azure A primeira coisa a fazer para desenvolver ou estender um aplicativo para o Windows Azure é adicionar um projeto do Windows Azure à sua solução Visual Studio 2010. Assim como o modelo WCF Service Application oferece tudo o que você precisa para criar um serviço Web do WCF, o modelo de projeto do Windows Azure oferece o contêiner e a configuração necessários para empacotar uma solução comum do Visual Studio 2010 para o Windows Azure. Para começar, basta adicionar um novo projeto do Windows Azure à solução GreenFeeBroker, dar um nome ao projeto e clicar em OK (figura 5). Figura 5: adicionando um projeto do Windows Azure no Visual Studio 2010 O Visual Studio 2010 apresenta uma lista de funções que irão adequar o modelo ao tipo de aplicativo que você está criando. Neste caso, já que queremos habilitar o BrokerService para o Windows Azure, vamos escolher a função Web WCF Service, como mostra a figura 6. 1 Além do Visual Studio 2010, você terá que instalar as Ferramentas do Windows Azure para o Microsoft Visual Studio versão 1.3, que incluem o kit de desenvolvimento de software (SDK) e estão disponíveis aqui: http://msdn.microsoft.com/en-us/windowsazure/cc974146.aspx. Se estiver usando uma versão de 32 bits do Windows 7, ou se estiver usando o Windows Vista ou o Windows Server 2008, você vai querer instalar alguns hotfixes também. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 10

Figura 6: escolhendo a função Web WCF Service. O projeto do Windows Azure simplifica a configuração do projeto BrokerService para o Windows Azure, fornecendo uma interface de usuário para a associação de projetos a uma função. Basta um clique com o botão direito no ícone de funções (Roles) para selecionar um projeto existente ou criar um novo. Depois disso, o projeto que você adicionou será associado à função, conforme mostra a figura 7. Figura 7: o resultado da associação de um projeto novo ou existente a um projeto do Windows Azure. Para que trabalhar com essas soluções seja o mais fácil possível, clique com o botão direito no projeto GreenFeeBroker.Cloud e selecione Set as Start Up Project (definir como projeto de inicialização). Isso garante que, ao testar o aplicativo localmente, o projeto será inicializado corretamente na malha de desenvolvimento (da qual trataremos em breve). Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 11

Há várias opções de configuração para implantar seu aplicativo ou serviço no Windows Azure, e essas opções podem ser definidas com um clique com o botão direito na função associada (neste caso, BrokerService, como mostra a figura 7) e selecionando-se as propriedades. As configurações mais comuns incluem a quantidade de instâncias que você gostaria que o Windows Azure alocasse ao implantar seu aplicativo e o tamanho da máquina virtual de destino de sua implantação. Essas escolhas estão entre as mais importantes, pois terão impacto direto no desempenho, na disponibilidade, na escalabilidade e nos custos do aplicativo. A figura 8 mostra várias opções de configuração, incluindo o tipo de máquina virtual que você deseja usar e a quantidade de instâncias que o Windows Azure deve alocar para seu aplicativo. Neste caso, eu configurei quatro instâncias pequenas. Não se preocupe se não souber quais configurações escolher a princípio. Conforme você for aprendendo, suas necessidades podem (e irão) mudar, e o bom do Windows Azure é que você pode mudar de ideia! Figura 8: opções de configuração da Web Role do Windows Azure. A guia Settings (configurações) permite definir pares de cadeia de caracteres/valores de configurações para coisas como conexões de banco de dados, caminhos para registro em log etc. O Visual Studio 2010 oferece uma ótima experiência de desenvolvimento, permitindo a você definir configurações para testes locais e execução na nuvem. Teste local com o emulador de malha O Visual Studio 2010 fornece capacidades completas de gerenciamento de ciclo de vida de aplicativos feitos para execução tanto localmente quanto na nuvem. Ao desenvolver aplicativos para o Windows Azure, o ciclo de vida de desenvolvimento é consistente com as práticas recomendadas para o gerenciamento de ciclo de vida de aplicativos (ALM). Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 12

Como mostra a figura 9, você desenvolve e testa localmente com o Visual Studio 2010 e as ferramentas de tempo de execução de desenvolvimento para emular a computação e o armazenamento. Em seguida, a implantação é feita em um ambiente de testes oferecido na nuvem pelo Windows Azure, onde são feitos testes antes que você finalmente lance seu aplicativo ou serviço para produção. Figura 9: gerenciamento de ciclo de vida de aplicativo no Windows Azure. O Visual Studio 2010, somado ao SDK do Windows Azure, inclui um pacote para desenvolvimento, teste e depuração local, o chamado emulador de malha. A malha de desenvolvimento tem dois componentes principais: o emulador de computação e o emulador de armazenamento. O emulador de computação permite compilar, implantar e testar seus aplicativos para o Windows Azure em seu ambiente de desenvolvimento local. Pense no emulador de computação como o equivalente às capacidades de hospedagem Web dentro do Visual Studio que oferecem uma experiência de hospedagem e depuração no Azure que emula o IIS. O Visual Studio proporciona uma experiência perfeita de desenvolvimento, teste e depuração, que permite a você interagir com seu aplicativo em execução no emulador de computação diretamente pela IDE. Para simular o serviço de armazenamento, o SDK do Windows Azure inclui um emulador de serviço de armazenamento para desenvolvimento e testes. Esse emulador de armazenamento oferece uma experiência de desenvolvimento idêntica à obtida trabalhando-se diretamente com o armazenamento do Azure em nível de API. Ao trabalhar localmente, o Visual Studio fornecerá automaticamente armazenamento local para você, usando qualquer versão recente do Microsoft SQL Server, incluindo o SQL Server Express Edition. Isso permite a criação de código que faça uso das mesmas APIs de armazenamento, esteja o código sendo executado localmente ou na nuvem. Porém, saiba que o emulador de armazenamento destina-se apenas a fins de desenvolvimento, e que nunca deve ser usado em cenários de produção. Na verdade, com o Visual Studio 2010, a interação com o emulador de malha é apenas uma questão de executar seu aplicativo pela IDE! Ao iniciar sua solução no Visual Studio 2010, você vai notar algumas informações no canto inferior esquerdo da IDE indicando que o Visual Studio está empacotando e implantando seu aplicativo no emulador de malha, incluindo Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 13

código de aplicativo para o emulador de computação e instruções de tabela, blob ou fila para o emulador de armazenamento (consulte o apêndice para maiores informações sobre o serviço de armazenamento do Windows Azure). Neste ponto, o aplicativo está hospedado e pronto para ser testado. O Visual Studio 2010 abrirá automaticamente uma janela do navegador com o endereço básico do seu aplicativo ou serviço, e colocará o aplicativo em modo de depuração, permitindo a você interagir com ele e conduzir qualquer solução de problemas com o código de forma interativa. Além disso, quaisquer instruções para a criação de tabelas, blobs ou filas serão executadas. Essas instruções podem ser inseridas em um arquivo global que permitirá que o código seja executado durante os diversos estágios do ciclo de vida do aplicativo, incluindo a inicialização. Para acompanhar a implantação ativa, procure pelo ícone do Windows Azure na barra de tarefas, clique nele com o botão direito e selecione Show Compute Emulator UI (mostrar interface de usuário do emulador de computação). A interface de usuário do emulador de computação do Windows Azure fornece visibilidade de status e integridade do aplicativo. É possível iniciar e interromper o aplicativo, e também continuar monitorando-o visualmente. Observe na figura 10 que há quatro instâncias virtuais do aplicativo, conforme escolhemos ao configurar o projeto BrokerService do Windows Azure. Figura 10: a interface de usuário do emulador de computação do Windows Azure. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 14

Neste momento, com o BrokerService hospedado, você pode testá-lo como faria normalmente e fazer as modificações que julgar necessárias antes da implantação no Windows Azure. Implantação no Windows Azure Depois de desenvolver e testar seu aplicativo localmente, é hora de implantá-lo no Windows Azure! Empacotando seu aplicativo com o Visual Studio 2010 A primeira etapa na implantação de seu aplicativo no Windows Azure é criar um pacote de implantação. O Visual Studio 2010 simplifica esse processo, automatizando a criação do pacote quando você clica com o botão direito no projeto do Windows Azure e seleciona Publish (publicar). Como mostra a figura 11, pode-se escolher entre duas abordagens: Create Service Package Only (criar apenas o pacote de serviço). Cria um arquivo de pacote contendo o aplicativo e um arquivo de configuração, que inclui todas as configurações que você especificou para o provisionamento, a implantação e a execução de seu aplicativo. Em seguida, o pacote pode ser carregado pelo portal de gerenciamento do Windows Azure. Deploy Your Windows Package to Windows Azure (implantar seu pacote do Windows para o Windows Azure). Automatiza o empacotamento e a implantação de seu aplicativo em uma única e prática etapa. A segunda opção exige que um certificado X.509 seja instalado na máquina de desenvolvimento local e carregado para o portal de gerenciamento do Windows Azure para garantir que apenas pacotes autorizados sejam implantados. Figura 11: empacotamento e implantação no Windows Azure via Visual Studio 2010. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 15

Vou demonstrar como implantar seu aplicativo usando o primeiro método para que você adquira alguma familiaridade com o portal de gerenciamento do Windows Azure. Conforme você for adquirindo experiência com a configuração e o gerenciamento de implantações no Windows Azure, a experiência de implantação plenamente integrada oferecida pela segunda opção dentro do Visual Studio se tornará útil, particularmente ao reimplantar aplicativos ou serviços existentes. Para empacotar sua solução, clique em OK. O Windows Explorer abrirá instantaneamente no local do pacote que o Visual Studio 2010 criou. A figura 12 mostra os dois arquivos criados. Figura 12: arquivos de configuração e pacote de serviço para implantação. Implantando seu aplicativo pelo portal de gerenciamento do Windows Azure O portal de gerenciamento do Windows Azure proporciona tudo o que você precisa para gerenciar seus serviços da plataforma Windows Azure, incluindo funções de computação e serviços de armazenamento, CDN, AppFabric e Marketplace. Ao efetuar login no portal (com uma conta configurada no Windows Azure), você terá a opção de criar um novo serviço hospedado e uma nova conta de armazenamento hospedado. Essas opções permitem definir uma implantação de computação e armazenamento, que deve ser realizada antes da implantação do seu aplicativo e dos requisitos de armazenamento correspondentes para o Windows Azure. O processo de implantação de um aplicativo ou serviço para testes ou produção é idêntico, e você terá que escolher um dos dois ao fazer a primeira implantação do aplicativo no Windows Azure. Para implantar o BrokerService, depois de clicar em New Hosted Service (novo serviço hospedado), como mostra a figura 13, uma janela será exibida, e deverá ser preenchida para a preparação do ambiente de hospedagem. Depois de Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 16

selecionar uma conta de assinatura, forneça um nome para o serviço que será usado para identificar facilmente o aplicativo no portal de gerenciamento do Windows Azure. Também é necessário especificar um prefixo de URL exclusivo, que vai ser parte da URL totalmente qualificada a ser usada para acessar seu serviço, ou no caso, o serviço Web BrokerService do WCF. Figura 13: provisionamento de novo serviço hospedado no portal de gerenciamento do Windows Azure. Também é possível selecionar grupos de afinidade, o que permite fazer solicitações explícitas quanto à localização de seus aplicativos de computação e armazenamento. Por exemplo, como os data centers do Windows Azure estão distribuídos geograficamente pelo mundo, uma boa ideia para otimizar o desempenho é garantir que seu aplicativo hospedado em computação esteja o mais próximo possível dos seus dados hospedados no armazenamento. Para cuidar disso, temos os grupos de afinidade. As opções de implantação incluem implantar o aplicativo no ambiente de testes, no ambiente de produção ou não implantar. Tenha em mente que você terá que pagar a mesma conta, seja qual for sua escolha entre teste ou produção. O maior benefício de ter dois ambientes é a capacidade de testar uma versão de um aplicativo antes que ele entre em produção, e isso é particularmente útil ao testar duas versões de um aplicativo, lado a lado. Escolha o nome que quiser para a implantação, mas é recomendável o uso de um padrão simples de versões que possa ser usado como rótulo. Assim fica mais fácil identificar, acompanhar e reconhecer versões diferentes de seus aplicativos e serviços ao movê-los dos testes para a produção. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 17

Por fim, forneça o caminho para o pacote e os arquivos de configuração que o Visual Studio criou para você, clicando em Browse Locally (procurar localmente). Clique em OK para começar o processo de implantação e provisionamento. A experiência de gerenciamento criada com base em suas escolhas irá mostrar que quatro instâncias computacionais (neste caso, quatro VMs pequenas ) estão sendo alocadas para a v1 do BrokerService. O status de cada instância alterna entre a espera, a criação e a inicialização das instâncias computacionais que hospedarão o aplicativo. Isso leva alguns minutos, mas se você considerar o tempo que demoraria para botar quatro servidores ou máquinas virtuais tradicionais para funcionar em um ambiente de carga balanceada e com implantação total com seu aplicativo, a velocidade e a facilidade de se realizar tudo isso com poucos cliques é fabulosa! Como mostra a figura 14, quando todas as instâncias estiverem prontas, o serviço lógico mostrará o status Ready (pronto). Clique no rótulo para obter metadados sobre a implantação, incluindo a data de criação, a quantidade de instâncias adotadas e o nome de DNS para a URI disponível publicamente que oferece um único ponto de extremidade lógico de carga balanceada para o BrokerService. Figura 14: BrokerService, pronto para o consumo. Testando no Windows Azure Neste ponto, o serviço pode ser testado como se estivesse em um ambiente de testes local tradicional. Para navegar até o serviço, basta clicar no nome de DNS mostrado na figura 14, que vai iniciar o navegador. Adicione o nome de arquivo BrokerService.svc ao fim Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 18

da URL na barra de endereços e você verá uma página de hospedagem surgir, indicando que o serviço está pronto para ser consumido. Eu sempre recomendo a realização de testes de verificação pós-implantação ou smoke testing para garantir que o serviço esteja hospedado corretamente e que seja capaz de realizar funções comuns, de rotina. Use o cliente de testes do WCF, que acompanha o Visual Studio 2010, para testar o serviço em teste ou em produção no Windows Azure, exatamente como você faria localmente com o emulador de armazenamento. Promovendo para produção no Windows Azure Depois de implantado para o Windows Azure, seu aplicativo pode ser implantado instantaneamente para produção por meio da opção Swap VIP (troca de IP virtual) no portal de gerenciamento do Azure. Se você não tiver uma implantação de produção ativa, a implantação de testes será promovida a implantação de produção. Deste ponto em diante, a URL de produção pode ser usada (neste caso, http://brokerservice.cloudapp.net). Gerenciando seu aplicativo no Windows Azure Você não vai usar o portal de gerenciamento do Windows Azure apenas para implantação, mas também para gerenciar aplicativos e serviços do Windows Azure. Quando estiver pronto para implantar uma nova versão do aplicativo, as mesmas etapas descritas acima podem ser seguidas, resultando em uma versão diferente implantada para nós fisicamente separados no ambiente de testes. Também é possível atualizar um aplicativo que já esteja em execução, carregando uma versão mais nova do pacote ou da configuração, ou ainda optar apenas por atualizar o arquivo de configuração, deixando o código do aplicativo ou pacote intacto. Podem ser provisionados serviços de armazenamento, incluindo tabela, blob e fila pelo mesmo portal de gerenciamento. Embora os detalhes sobre os serviços de armazenamento fujam ao escopo deste white paper, o aplicativo de amostra BrokerService faz amplo uso do armazenamento em tabela para armazenar descrições de novos campos de golfe e para retornar uma lista de todos os campos de golfe da loja. Uma conta de armazenamento foi criada para o aplicativo BrokerService de nome GreenFeeBrokerTable e os pontos de extremidade REST para acessar os serviços de armazenamento de tabela, fila e blob são fornecidos assim como com o emulador de armazenamento local. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 19

Conclusão Organizações de todos os tamanhos podem se beneficiar da computação em nuvem. O Windows Azure fornece capacidades de Plataforma como um Serviço que permitem que os desenvolvedores aproveitem a facilidade e a produtividade do Microsoft.NET, e o Visual Studio 2010 fornece o mais importante ambiente de desenvolvimento de aplicativos locais e na nuvem. Juntos, o Windows Azure e o Visual Studio 2010 oferecem uma poderosa proposição de valor para a criação de novos aplicativos, além de estender aplicativos existentes para que tirem proveito da nuvem, tornando o desenvolvimento, o teste e o gerenciamento de aplicativos híbridos praticamente perfeitos. Sobre o autor: Rick G. Garibay é gerente geral de prática de desenvolvimento de sistemas conectados da Neudesic. Rick é um Microsoft MVP, orador e autor focado em tecnologias conectadas como SOA e soluções compostas híbridas. Este documento é derivado de um artigo publicado originalmente na CODE Magazine e foi usado com a permissão da editora, a EPS Software Corporation. Este white paper foi desenvolvido em parceria com a A23 Consulting. Para obter mais informações, acesse: http://www.microsoft.com/visualstudio Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 20

Apêndice Serviço de computação do Windows Azure O serviço de computação é um contêiner lógico para qualquer quantidade de máquinas virtuais do Windows Server que hospedem seu aplicativo. O serviço computacional usa balanceadores de carga que garantem que as solicitações ao seu aplicativo sempre sejam encaminhadas a uma instância disponível de máquina virtual (desde que múltiplas instâncias tenham sido configuradas). O serviço computacional é particionado em duas funções: Web Role e Worker Role. Cada função tem afinidade a uma máquina virtual; porém, um aplicativo em cada função nunca sabe em qual máquina física ou máquina virtual lógica está sendo executado. Ao desenvolver um aplicativo para o Windows Azure, ele precisa ser direcionado à Web Role ou Worker Role, e também pode ser particionado e distribuído para tirar proveito das duas. Web Role Pense em uma Web Role como um contêiner para aplicativos Web que seriam implantados em um servidor Web. No Windows Azure, um aplicativo feito para a Web Role é executado no servidor web principal da Microsoft, os Serviços de Informações da Internet (IIS), oferecendo o melhor ambiente de hospedagem para aplicativos e serviços.net e não.net. Aplicativos implantados para uma Web Role podem aceitar solicitações HTTP e HTTPS vindas de fora da rede de data centers da Microsoft (por exemplo, do seu desktop, ou do servidor do seu cliente no próprio data center dele). Sendo assim, há uma certa equivalência com uma DMZ (ou zona desmilitarizada) local. Worker Role Uma Worker Role só pode aceitar entrada de outro aplicativo dentro do Windows Azure, e aceita solicitações por meio do recurso de armazenamento de fila, do armazenamento do Windows Azure. Uma Worker Role equivale à forma como você pensaria em um servidor de aplicativos em um data center local tradicional, capaz de executar uma série de serviços de middleware que fazem trabalho pesado e de longa duração em segundo plano, garantindo que a experiência de usuário do seu aplicativo de front-end não seja afetada. É claro que é possível criar seu aplicativo lógico com uma abordagem em camadas, incluindo as duas funções, e esse é um padrão excelente para quem quer oferecer escalabilidade ideal por meio de suporte a trabalho assíncrono em segundo plano que não consome recursos no aplicativo de Web Role. Neste documento, no entanto, vou me concentrar no desenvolvimento de um aplicativo exposto como um serviço Web implantado em uma Web Role. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 21

Armazenamento do Windows Azure Assim como acontece com aplicativos locais, para que um software seja útil ele precisa ser capaz de salvar e recuperar informações em vários tipos de mídia, incluindo texto ou cadeias de caracteres, objetos e arquivos como imagens, documentos, músicas ou vídeos. O serviço de armazenamento oferece três opções essenciais para permitir que seus aplicativos armazenem e interajam com dados e se assemelhem a mecanismos de armazenamento tradicionais com os quais você já deve estar acostumado ao criar software para execução local. Table storage (armazenamento em tabela): permite aos desenvolvedores modelar seus esquemas conceituais usando entidades.net sem considerar a tecnologia de armazenamento lógico subjacente. O serviço de armazenamento em tabela é exposto usando um estilo de arquitetura conhecido como REST, e que oferece a capacidade de inserir, atualizar, excluir e ler registros em tabelas implantadas no armazenamento em tabela. Embora essa abordagem seja diferente de abordagens relacionais comuns de armazenamento e manipulação de dados, ela oferece uma alternativa simples a outras opções, como o Microsoft SQL Azure. Blob storage (armazenamento em blob): permite armazenar dados em formato binário, o que é ideal para tipos de mídia como imagens, arquivos ou árvores. Encare o armazenamento em blob como um sistema de arquivos para o Windows Azure. Queue storage (armazenamento em fila): oferece troca de mensagens em fila entre aplicativos e funções. Filas são muito comuns no design de software distribuído, pois oferecem um meio de processar trabalhos na ordem em que são criados, além de durabilidade para assegurar que os trabalhos ou mensagens não sejam perdidos antes de serem processados. Segurança na nuvem Segurança é um tópico muito amplo, porém eminentemente importante para quem adota a computação em nuvem. A Microsoft é muito cuidadosa ao garantir a segurança de seus data centers e servidores, e põe você no controle da aplicação dos requisitos de segurança necessários em seus aplicativos. Como o destino é uma mesma plataforma (Windows e.net) tanto localmente quanto na nuvem, as mesmas ferramentas e técnicas são usadas na identificação dos usuários de seu aplicativo (autenticação) e para decidir quais serão seus privilégios (autorização). Seus dados também podem ser criptografados e assinados digitalmente conforme a necessidade, como você faria localmente. Além disso, a Microsoft oferece um serviço conhecido como Serviço de Controle de Acesso (ACS), que permite tirar proveito da segurança baseada em reivindicações, simplificando muito o processo de autenticação e autorização de usuários de seus aplicativos e se valendo de uma variedade de provedores de identificação, incluindo o Windows Active Directory, o Windows Live e o FaceBook. Para obter mais informações sobre cenários de segurança no Windows Azure, consulte o site Patterns and Practices dedicado à segurança do Windows Azure: http://azuresecurity.codeplex.com/. Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 22

Certifique-se de que o texto padrão de copyright de white paper da seção Legal seja encaixado aqui. Esse modelo é atualizado periodicamente. Portanto, em vez de inseri-lo diretamente neste modelo, onde pode ficar desatualizado, fornecemos um link para o texto. File:\\lca\pdm\TMGUIDE\Copyright\copywhitepaper.doc Desenvolvendo e estendendo aplicativos para o Windows Azure com o Visual Studio 2010 23