O Windows Azure é
uma plataforma especial para execução de aplicativos e serviços, baseada nos
conceitos da computação em nuvem. É um serviço totalmente hospedado e
controlado pela Microsoft, o que difere das versões do Windows lançadas até
hoje. Qualquer desenvolvedor cadastrado pode enviar seus aplicativos para o
Azure e rodá-los diretamente através do serviço, que confere escalabilidade e
economia de licenciamento. Portanto, o Windows Azure não é vendido para
ambientes desktop, mobile ou servidores corporativos.
Foi apresentado para
os desenvolvedores e para o público no dia 27 de outubro de 2008 durante a
Conferência de Desenvolvedores Profissionais da Microsoft, ocorrida em Los
Angeles e segundo estimativas da Microsoft, pode ser lançado comercialmente em
2013 com preço acessível (foi colocado em produção em 1 de Janeiro de 2010).
Podemos definir
cloud computing ou computação em nuvem como uma combinação de grid computing
com software como serviço (SaaS - Software as a Service). Do grid computing
temos o poder de computação e alta escalabilidade oferecida para as aplicações,
através de milhares de máquinas (hardware) disponíveis em datacenters de última
geração. Do software como serviço temos a capacidade de contratar um serviço e
pagar somente pelo uso. Essa característica de provisionamento dinâmico é muito
interessante, permitindo a redução de custos operacionais, com uma configuração
de infraestrutura realmente mais aderente às necessidades do nosso negócio.
Um elemento chave do
modelo de cloud computing é a virtualização. Basicamente, quando contratamos
mais ou menos poder de computação de uma de cloud estamos trabalhando com
instâncias de máquinas virtuais, que irão suportar a execução de nossas
aplicação na nuvem. Assim, teremos máquinas virtuais para computação de
processos, para interfaces web, para armazenamento de imagens, para dados, etc.
O Windows Azure
coordena a malha de hardware disponíveis em datacenters Microsoft,
provisionando máquinas virtuais para a oferta de serviços online de alta
escalabilidade e aplicações com provisionamento dinâmico. Essa malha é baseada
em containeres, onde milhares de máquinas estão disponíveis para a
infraestrutura Azure.
Além dos recursos de
computação, armazenamento e administração oferecidos pelo Windows Azure, a
plataforma também disponibiliza uma série de serviços para a construção de
aplicações distribuídas, além da total integração com a solução on-premise
(local) baseada em plataforma .NET. Entre os principais serviços da plataforma
Windows Azure encontramos o SQL Azure Database (um banco de dados relacional na
nuvem), o Azure AppFabric Platform (um barramento de serviços e controle de
acesso na nuvem) além de uma API de gerenciamento e monitoração para aplicações
colocadas na nuvem.
Podemos usar uma
infraestrutura de nuvem conforme a necessidade, sempre que pensamos em alta
escalabilidade via internet e redução de custos operacionais (com um ambiente
onde pago apenas pelo uso). Porém, que aplicação vou colocar na nuvem?
Assim, cenários de
carga “On/Off”, carga com “Crescimento Rápido”, carga com volume “Imprevisível”
ou mesmo picos “Sazonais” de carga durante a operação do sistema são exemplos
de demandas que são aderentes ao Windows Azure, devido sua capacidade de configuração
dinâmica e elástica.