40. VMs de
teste/desenvolvimento na
nuvem
Aproveite os conjuntos de
habilidades existentes para
mover o
teste/desenvolvimento para a
nuvem
Conectividade com dados e
aplicativos locais
Identidade comum
Frameworks e ferramentas de
desenvolvimento comuns
para o local e a nuvem
Acessado por uma equipe
geograficamente dispersa
Hyper-V
VHD
Implantar
No local
Equipes
dispersas
Armazenamento do
Azure
VMsde
teste/desenvolvimento
da área restrita
Estado
de
Disco
Salvo
Túnel
VPN
Windows Azure
41.
42.
43. É fácil implantar e administrar serviços de hospedagem de sites escalonáveis e de alta densidade
Escalonável Automatizado Flexível
Hospedagem web segura e
de alta densidade
Protocolos e métodos de
publicação abertos
Solução integrada e aberta
Reduz os custos de inclusão
do cliente e simplifica
vendas adicionais
Venda complementar, de
compartilhada a reservada
Suporte a PHP, Node.js e
ASP.NET
Medição e limitação de
recursos
Totalmente integrado à
Galeria de Aplicativos Web
49. Modelo centrado em máquina
tradicional
Com vários aplicativos Web, os desafios dos provedores de serviço
incluem:
Maior complexidade de carga e gerenciamento
Segurança – isolamento de dados armazenados, mecanismos de
autenticação e autorização
Dimensionamento – computação autodimensionável,
armazenamento dimensionável
Provisionamento de recursos do locatário
Falta de suporte para vários sites SSL; aplicativos têm afinidade
com um único servidor
Conteúdo do aplicativo Web
Bancos de dados de aplicativo
applicationHost.config
root web.config
Php.ini
Servidor web
IIS
Os sites alocam um aplicativo Web para um processo (ou processos)
específico:
Distribui a carga alocando aplicativos Web para processos
específicos
Melhora a gestão ao não exigir alterações no código dos
aplicativos existentes
Fornece um pool de recursos escalonável e elástico, capaz de
executar um conjunto arbitrário de aplicativos Web
Fornece vários sites SSL que usam certificados de servidor
exclusivos para associação HTTPS; os aplicativos são liberados
da afinidade com um único servidor
Modelo distribuído
Conteúdo do aplicativo Web
Bancos de dados de aplicativo
applicationHost.config
root web.config
Php.ini
Processo de
trabalho
Aplicativo
Web
50. Balanceadore
s de carga de
hardware
upstream
Router front-
end de
solicitação de
aplicativo
Router front-
end de
solicitação de
aplicativo
…..
Armazenamento
persistente
Servidor ou máquina virtual
Lógica de roteamento
local
Web workers
Armazenamento
temporário
de arquivos por
aplicativo
Bancos de
dados do
aplicativo Web
Diretórios de
arquivos do
aplicativo Web
Estado em tempo de
execução e topologia do
cluster
Cluster de sites
Processo de
trabalho
(w3wp)
Dados de uso de
recursos
Usuário final
Solicitação
HTTP/S
Os serviços de
publicação realizam
várias operações com
arquivos na estrutura
de diretórios do
aplicativo Web.
Publicadores
Serviço FTP
Serviço de
implantação
da Web
Usando FTP e Serviço de Implantação da Web
51. Balanceadore
s de carga de
hardware
upstream
Router front-
end de
solicitação de
aplicativo
Router front-
end de
solicitação de
aplicativo
…..
Armazenamento
persistente
Servidor ou máquina virtual
Lógica de roteamento
local
Web workers
Armazenamento
temporário
de arquivos por
aplicativo
Bancos de
dados do
aplicativo Web
Diretórios de
arquivos do
aplicativo Web
Estado em tempo de
execução e topologia do
cluster
Cluster de sites
Processo de
trabalho
(w3wp)
Dados de uso de
recursos
Usuário final
Solicitação
HTTP/S
Protocolos e ferramentas de
desenvolvimento
ProtocolosFerramentas de
desenvolvimento
Visual Studio,
WebMatrix
Integração com controle do código-fonte
Visual Studio Team Foundation Server 2010
FTP, Git,
WebDeploy, HTTP
reduzem os custos de inclusão e aumentam a satisfação do cliente
57. O Windows Azure fornece dois serviços de plataforma que
aceleram o desenvolvimento móvel
Os Serviços Móveis fornecem um back-end escalonável e seguro
para aplicativos móveis. Com os Serviços Móveis, é fácil armazenar
dados na nuvem, autenticar usuários, enviar notificações por push e
adicionar lógica de negócios.
Os Hubs de Notificação fornecem um serviço de transmissão por
push que facilita o envio de notificações personalizadas em escala e
com baixa latência a partir de praticamente qualquer back-end de
aplicativo.
58. Windows Store
iOS
Android
Windows Phone 8
iOS
Android
HTML 5/JS
SDKs
Scripts:
tabela
Programados
API
personalizada
API REST
Facebook Twitter
Educação
digital Google
Active
Directory
SQL
Armazenamento
em tabelas
Armazenamento
em Blob
WNS e
MPNS APNS GCM
Mongo
DB
Hubs de
Notificação
Controle de
Origem
59. Use scripts de servidor para adicionar lógica personalizada ao
seu aplicativo móvel e se conectar a outros serviços do
Windows Azure e de terceiros
Tabela Programado API personalizada
62. Sem HN...
Cada plataforma (Windows Store, iOS, Android)
tem um serviço de notificação por push diferente
Funcionalidades e protocolos diferentes para
cada PNS
Depois de abrir os canais de comunicação, ainda
tem que armazenar e atualizar as informações do
dispositivo com protocolos específicos da
plataforma
Complexidade adicional para personalização
baseada em interesses, dispositivo e formato
Com HN...
Sem protocolos específicos para a plataforma; o
back-end comunica-se apenas com o HN
Evite armazenamento de informações no back-
end; HN mantém registro dos dispositivos e dos
rótulos associados
Transmita, com uma única chamada, notificações
para milhões de dispositivos em várias
plataformas em vez de enviar várias mensagens
baseadas na plataforma, nos dispositivos, nos
interesses e nas preferências
63. Sem HN...
Implante dezenas ou centenas de máquinas
virtuais em paralelo
Fragmente seu aplicativo
Direcione diferentes subconjuntos de registros
para várias VMs
O back-end envia milhões de notificações para
diferentes plataformas, interesses, formatos,
versões de aplicativo, etc.
Remova manualmente o registro do dispositivo
Com HN...
Especifique um conjunto de registros rotulados
(ou sem rótulos para atingir todos os dispositivos
registrados)
Especifique uma mensagem e uma carga
Envie uma mensagem ao HN
O HN direciona automaticamente a mensagem
para os milhões de registros designados, em
questão de minutos.
HN limpa o registro do dispositivo para refletir as
64. Registrando Novos Dispositivos em seu Hub de Notificação
$
€
Usuário baixa o aplicativo
de uma app store pública ou
privada.
1
Hub de Notificação
O Hub de Notificação
associa:
• rótulos de interesse
(p. ex., homem,
fotografia, Seattle)
• modelos de
formatação (p. ex.,
espanhol, euro,
Celsius)
com cada registro
2 3
$
€
Aplicativo
desinstalado, HN:
• limpa o registro
• para de enviar
mensagens
Aplicativo instalado,
HN mantém:
• rótulos
• modelo
Gerenciamento de Usuários
65. Envio de uma notificação por push com base em rótulos
Back-end de
aplicativo
Hub de Notificação
APNS
GCM
MPNS
WNS
$
¥
¥
$
£
€
$
€
rótulo = "mulher"
rótulo = "Seattle"
rótulo = "baunilha"
"mulher" "Seattle" "baunilha"
"mulher" "Seattle" "baunilha"
"mulher" "Seattle" "baunilha"
"homem" "Seattle" "baunilha"
"mulher" "Seattle" "baunilha"
"mulher" "baunilha"
"mulher" "Nova York" "chocolate"
"homem" "Nova York" "baunilha"
66. O modelo é aplicado no cliente quando o usuário recebe a mensagem
Hub de Notificação
APNS
GCM
MPNS
WNS
$
¥
¥
$
£
€
$
€
Modelo específico
para o registro
aplicado às
mensagens de
entrada
Formatações para
diferentes
plataformas e
preferências de
usuário (ex.:
moeda).
78. Volume Global
do Datacenter
SLA mensal de 99,95% Pague
apenas o que usar
Opções de
Computação
Flexíveis e
Abertas
Máquinas Virtuais, Sites,
Serviços Móveis e Serviços de
Nuvem
Integre com o
local
Gerencie cargas de trabalho
com suas ferramentas atuais
79. Ative seu benefício do Windows Azure no MSDN e
receba um crédito de até US$ 150 por mês para
ser usado em qualquer serviço de des./teste do
Windows Azure, além de taxas de des./teste
reduzidas e acesso a VMs pré-configuradas.
http://aka.ms/vsAzure
80. Softwares e serviços para uso em produção
Ferramenta primária de desenvolvimento/teste
Visual Studio
Professional
Visual Studio
Test Professional
Visual Studio
Premium
Visual Studio
Ultimate
Visual Studio Team Foundation Server 2013 e uma CAL ● ● ● ● ●
Visual Studio Online ● ● ● ● ●
Microsoft Office Professional Plus 2013 ● ●
Softwares e serviços para desenvolvimento e testes
Windows, Windows Server ● ● ● ● ● ●
Crédito mensal do Windows Azure e preços com desconto para
desenvolvimento e testes
Crédito de US$
100/mês
Crédito de
US$ 50/mês
Crédito de US$
50/mês
Crédito de US$
100/mês
Crédito de US$
150/mês
Microsoft SQL Server ● ● ● ● ●
Microsoft Office ● ●
Microsoft Dynamics ● ● ●
Windows Embedded ● ● ● ●
Todos os outros servidores (inclusive SharePoint e Exchange) ● ● ●
Benefícios adicionais
Incidentes de suporte técnico 2 2 2 2 4 4
Contas de desenvolvedor da Windows Store e Windows Phone ● ● ● ●
Assinatura de desenvolvedor em Office 365 ● ●
Coleções de cursos do Microsoft E-Learning 1 2 1 1 2 2
Suporte prioritário nos Fóruns MSDN ● ● ● ● ● ●
Suporte prioritário nos Fóruns do TechNet ●
MSDN Magazine ● ● ● ● ● ●
Chat online MSDN ● ● ● ● ● ●
Ofertas especiais de parceiros do setor do Visual Studio e parceiros
Microsoft
● ● ● ● ● ●
1 Benefício único
de 12 meses
81. Conheça o
Visual Studio
2013
http://www.visualstudio.com
Experimente o
Visual Studio
online
http://www.visualstudio.com
Comece a usar
o Windows
Azure
Ative seu benefício do MSDN e
experimente-o ou obtenha uma
conta de avaliação gratuita do
Windows Azure
http://www.windowsazure.com
Vamos começar falando do panorama geral — o que podemos esperar da Microsoft daqui a vários anos, para onde estamos indo e qual é a estratégia fundamental. Isso nos ajudará a entender se nossa estratégia está alinhada com a direção do seu negócio, com a maneira como você vê as mudanças e inovações dentro dele e com a forma usada pela TI para dar suporte a isso.A visão para o Windows Azure e todos os ativos que temos no portfólio da Microsoft é de permitir que os clientes tenham um datacenter sem limitações. O Cloud OS oferece uma plataforma consistente em nuvens privadas, hospedadas e públicas, com o objetivo de impulsionar os aplicativos do mundo todo. O Windows Azure e o Windows Server formam a espinha dorsal — o motor — do Cloud OS.O Cloud OS da Microsoft é único, com uma plataforma que opera consistentemente em todas a nuvens. Ele oferece todos as principais funcionalidades para que os clientes possam gerenciar nuvens públicas, privadas e de parceiros de maneira simples. Disponibilizamos 5 funcionalidades principais em todas as nuvens, de forma consistente — virtualização, gerenciamento, desenvolvimento, plataforma de dados e também segurança e identidade. Esses pontos em comum são atributos únicos da abordagem do nosso Sistema Operacional de Nuvem — criar um SO que está sempre atualizado e funcionando, capaz de ser executado tanto em uma escala muito grande como em uma muito pequena. Essa visão conta com um conjunto avançado de novos serviços em tempo de execução, que viabilizam seus aplicativos sociais, pessoais, móveis e com grande volume de dados. Conforme avançamos, o SO realmente extrapola os limites do PC, alcançando todas as formas de dispositivo, e o Cloud OS se torna o cerne disso tudo. Assim, ao disponibilizar Cloud OS, estamos ajudando a TI a fornecer quatro coisas essenciais. A primeira é transformar o datacenter. Há muita complexidade na forma como os datacenters são executados atualmente. A TI gerencia o datacenter como infraestrutura e tenta consolidar servidores e realizar virtualizações para economizar dinheiro. O que realmente precisamos fazer é transformar o datacenter por meio de automação. E ajudar os clientes a pensar não somente no gerenciamento dos servidores, mas no gerenciamento dos recursos conjuntos de computação, rede e armazenamento encontrados no datacenter como um serviço de entrega compartilhado para o negócio. A segunda é proporcionar insights a partir de quaisquer dados. Trata-se de ajudar a TI a combinar dados relacionais estruturados de dentro da empresa com dados não relacionais e não estruturados da web. Big Data da web, pequenos dados em termos de ERP e CRM e outros aplicativos dentro de firewalls realmente significam "todos os dados" para nós — e a capacidade de colocar todos esses diferentes conjuntos de dados juntos, proporcionando informações para o usuários finais. Disponibilizamos o encanamento entre o SQL e as nossas funcionalidades, e implantamos novas funcionalidades no SQL para conectar esse encanamento. Mas também oferecemos isso em parceria com a Divisão do Microsoft Office, Excel e SharePoint, onde democratizaremos o frontend de BI, permitindo que as pessoas combinem conjuntos de dados de forma exclusiva, obtendo informações que antes estavam indisponíveis — e tudo de forma fácil. Atualmente, um dos maiores problemas em relação a dados é o treinamento e a adoção deles pelo usuário final. O Excel e o SharePoint eliminam os custos intermediários desse processo. A terceira área é a capacitação de uma TI centrada nas pessoas. Isso tem a ver com todos os diferentes dispositivos que surgem no mercado atualmente e com ajudar a TI a gerenciar as necessidades dos usuários finais em seus ambientes através de governança e políticas de suporte para dispositivos, dados e usuários, conforme esses dispositivos entram na empresa. Ser capaz de fazer isso em uma plataforma consistente, através de uma único painel, é uma proposição de valor poderosa e é o que oferecemos com o Intune. A quarta é habilitar aplicativos de negócios modernos. Através de nosso poderoso ambiente .NET, nossa visão é a de permitir aos clientes codificar uma só vez e implementar em qualquer dispositivo. Precisamos de funcionalidades modernas que permitam a você criar aplicativos rapidamente, executar falhas rápidas e iterações repetíveis em serviços de nuvem e TI híbridos, trazendo novos tipos de fator de forma e novas tecnologias, como inteligência social e de negócios, para dentro do aplicativo. Assim, nossa estratégia para o STB é de fornecer esses quatro pilares para a TI. O que nos torna verdadeiramente únicos é que oferecemos isso em uma plataforma consistente, por meio de desenvolvimento, gerenciamento, identidade, virtualização e da própria plataforma de dados. Nossa ambição com o Cloud OS é permitir que um cliente, em sua nuvem privada local, flexibilize seu ambiente para uma nuvem parceira ou para a nuvem pública do Azure. De modo que essa noção de Cloud OS ofereça consistência e habilidade para gerenciar o ambiente de aplicativos e a infraestrutura comercial de TI, de uma maneira que eles não estejam apenas gerenciando suas quatro paredes, mas sejam capazes de aproveitar outros tipos de nuvem de uma forma simples. Essa capacidade dará à TI a agilidade que nunca tiveram antes.
Objetivos do slide:Explique os três termos usados no setor para os serviços de nuvem.Observações para o apresentador:No setor, há muita discussão sobre os diferentes termos, como Plataforma como Serviço, Infraestrutura como Serviço e Software como Serviço.Desde o PDC08, quando anunciamos o Windows Azure, nosso foco tem sido oferecer uma plataforma como serviço onde você possa construir aplicativos. Onde a plataforma liberte você das complexidades envolvidas na construção e execução de aplicativos. Nós realmente acreditamos que o caminho futuro para o desenvolvimento é oferecer uma plataforma. Na verdade, como você verá em alguns minutos, acreditamos que há várias funcionalidades novas que deveriam ser oferecidas na forma de serviços para a plataforma.Observações:Há uma grande confusão no setor em relação à nuvem. É importante que você entenda tanto o que está acontecendo no setor quanto o que pensamos sobre a nuvem. Esta é a classificação mais comumente utilizada na diferenciação entre os tipos de serviço de nuvem.O setor definiu três categorias de serviço:IaaS – conjunto de funcionalidades de infraestrutura, como um sistema operacional, conectividade da rede, etc., que é oferecido no sistema "pague o que usar" e pode ser utilizado para hospedar aplicativos. No Windows Azure, as máquinas virtuais são nossa oferta de IaaS (no AWS, o EC2 é a oferta de IaaS). Geralmente, o IaaS é melhor para mover aplicativos existentes para a nuvem.PaaS – conjuntos de funcionalidades de nível mais alto oferecidos como serviços consumíveis a desenvolvedores que estão criando aplicativos. O PaaS liberta os desenvolvedores da infraestrutura subjacente, possibilitando que os aplicativos sejam criados mais rapidamente. No Windows Azure, temos vários serviços de plataforma — de funções de trabalho e web a serviços móveis e sites. O importante aqui é que a Microsoft, como seu provedor de nuvem, cuida das atualizações mais importantes, como o patch do SO (no AWS, o Elastic Beanstalk é a oferta de PaaS, embora você ainda tenha que realizar o patch do SO).SaaS – aplicativos que são oferecidos sob um modelo de entrega de serviço em que as organizações podem simplesmente consumir e usar o aplicativo. Geralmente, a organização pagaria pelo uso do aplicativo ou ele seria monetizado através de receita publicitária. Na Microsoft, exemplos de SaaS incluem o O365 e o SkyDrive.É importante notar que esses 3 tipos de serviço podem existir de forma independente ou combinada.
Nos últimos anos, vimos um crescimento explosivo no uso da nuvem pública. Enquanto a maior parte da adoção inicial coube a startups e organizações menores, muito do novo crescimento virá de organizações maiores adotando a nuvem pública. Você pode perguntar: o que está causando a adoção da nuvem numa taxa tão acirrada? Há 3 fatores fundamentais em atuação aqui:TEMPO DE COMERCIALIZAÇÃO:o ritmo de inovação, impulsionado pela computação em nuvem, aumentou drasticamente — é possível começar em poucos minutos em vez de esperar dias/semanas para obter e provisionar servidores. A redução do “tempo de desenvolvimento” e do “tempo de comercialização” significa que a TI pode ser muito mais ágil em atender às necessidades das unidades de negócios ou dos desenvolvedores. Adotar e permitir inovações. Ajude sua empresa a ficar à frente da concorrência. Na verdade, a incapacidade da TI em prover velocidade e agilidade resultou no que muitos chamam de “Shadow IT”, uma situação na qual as unidades de negócios recorrem aos cartões de crédito para adquirir recursos de computação sem o conhecimento da TI.ABERTO E FLEXÍVEL:o Windows Azure é projetado para fornecer aos desenvolvedores e profissionais de TI a flexibilidade e as opções necessárias para a construção de aplicativos de negócios modernos. O Windows Azure não fornece apenas os serviços de integração necessários para a criação de aplicativos híbridos que utilizam ativos locais já existentes. Ele também permite que os desenvolvedores usem suas linguagens, ferramentas e estruturas favoritas. Há SDKs disponíveis para .NET, Node.js, Java, PHP, Python e Ruby. Nossa galeria de imagens de máquinas virtuais inclui várias das mais populares imagens do Linux, como SUSE e Ubuntu. Os serviços móveis oferecem suporte imediato para Android e iOS.ECONOMIA:E, claro, você paga só o que usar na nuvem. Isso representa economia para qualquer aplicativo que tenha necessidades de computação variáveis. Para algumas organizações, há também o benefício adicional de trocar o CapEx pelo OpEX, liberando o capital alocado em investimentos de infraestrutura para que ele possa ser usado para outros fins.
Com a versão 2.1 do SDK do Windows Azure, você notará uma melhora significativa no Gerenciador de Servidores do Visual Studio.O gerenciador foi reprojetado para que todos os serviços do Windows Azure fiquem contidos em um único nó. No nó do nível superior, agora é possível gerenciar as credenciais do seu Windows Azure, importar um arquivo de assinatura ou filtrar o Gerenciador de Servidores para exibir apenas os serviços de regiões ou assinaturas específicas. Com o SDK 2.2, é possível usar a autenticaçãoOAuth com o Windows LiveID para gerenciar sua conta Windows Azure, sem o uso de certificados.Após a inserção das informações de assinatura, os serviços do Windows Azure de todas as suas assinaturas serão automaticamente enumerados no Gerenciador de Servidores. Você não precisa mais adicionar manualmente cada serviço no Gerenciador de Servidores. Isso proporciona uma maneira conveniente de se visualizar serviços de nuvem, contas de armazenamento, namespaces do barramento de serviço, máquinas virtuais e sites a partir de um só local.Com o SDK 2.2, há novos nós a serem gerenciados; Serviços Móveis e Banco de Dados SQL.
Suporte à filtragem de regiões e assinaturasUsando o nó do Windows Azure no Gerenciador de Servidores, também é possível filtrar, por região ou assinatura, os serviços do Windows Azure no Gerenciador de Servidores. Se você tiver várias assinaturas, mas precisar concentrar sua atenção em apenas algumas, essa é uma maneira conveniente de ocultar os serviços de outras assinaturas até que eles se tornem relevantes. Também é possível filtrar por região.
Demonstrações:"Demonstração 1 – Ferramentas do Visual Studio para o Windows Azure"
As máquinas virtuais agora possuem um menu de contexto com ações que permitem iniciar, desligar, reiniciar e excluir uma máquina virtual diretamente dentro do Gerenciador de Servidores do Visual Studio. A ação "Shutdown" permite que você desligue a máquina virtual e suspenda a cobrança quando a VM não estiver sendo usada, podendo reiniciá-la facilmente quando precisar:
Este cenário aplica-se de forma ampla a todos os tipos de organização. Seja você uma empresa multinacional com 100.000 funcionários ou um desenvolvedor/CEO que está criando sozinho seu aplicativo móvel, é necessário ter uma área de restrita para construir, testar e aprender. E você precisa de uma zona isolada e segura para fazer isso. Você pode contar com os Serviços de Infraestrutura do Windows Azure para gerar rapidamente laboratórios para desenvolver e testar aplicativos, validar o comportamento de um aplicativo ou criar ambientes de pré-venda, treinamento e ensino. Provisionar Máquinas Virtuais em minutos lhe dá acesso a uma área restrita e a um laboratório. A maioria dos ambientes de desenvolvimento, teste e laboratório dependem do projeto e não precisam funcionar 24x7. Quando terminar, basta desligar suas máquinas virtuais. Você paga pelo que usar, nada mais.Você tem torres de servidores embaixo das mesas de seus desenvolvedores para criar ambientes e simular servidores de produção? Deixe as máquinas virtuais do Windows Azure cuidarem disso para você – rapidamente. Aquela torre de servidor embaixo da mesa não precisa funcionar 24x7, receber manutenção o ano todo e ser atualizada a cada três. Obtenha acesso a Servidores Windows pré-configurados e a muitas outras imagens de carga de trabalho da Microsoft na galeria, pegue uma na comunidade de código aberto VM Depot ou implante sua própria imagem VHD. Está atualizando um aplicativo de linha de negócios para o Windows Server 2012 e precisa passar toda a sua pilha em um teste de estresse? Nas máquinas virtuais, é possível aumentar ou diminuir a área restrita e a carga do aplicativo em tempo real. Você tem que forçar a carga do aplicativo e a capacidade da infraestrutura para reduzir os problemas antes que eles ocorram. Quando estiver pronto, transfira para o ambiente local ou conecte-se a ele por meio de uma rede virtual. Você tem equipes de atendimento que precisam reproduzir os erros reportados por clientes internos e externos a fim de resolver problemas em aplicativos? A equipe de vendas precisa demonstrar a execução de um aplicativo no SUSE Linux Enterprise na frente de um cliente? Você precisa construir o protótipo de um site do SharePoint antes de concorrer a um novo projeto? Você não precisa alocar seu hardware local para isso se não quiser; e também não precisa comprar mais hardware se estiver com o prazo ou o orçamento curto. É aí que entram os Serviços de Infraestrutura do Windows Azure. No entanto, não se trata apenas de replicar infraestrutura. Seus desenvolvedores também precisam de ferramentas para trabalhar.Algumas vezes, trata-se de construir novos aplicativos avançados e reduzir os tempos de ciclo dos desenvolvedores. Quando quiser reduzir a dependência que as equipes de desenvolvimento têm em relação às operações de TI para implantar ambientes de teste, considere a execução do Team Foundation Server (TFS) em máquinas virtuais. Você pode implantar farms sob demanda e continuar acessando o TFS a partir de ferramentas instaladas localmente, como o Visual Studio, o Microsoft Test Manager e os aplicativos de navegação. Os testadores da equipe também podem configurar e gerenciar laboratórios de teste usando o Test Lab Management do TFS.Ou, quando você quiser colaborar com parceiros de desenvolvimento que não têm acesso à sua rede corporativa, o TFS nas máquinas virtuais fornecerá a infraestrutura certa.
Demonstrações:"Demo 2 – ambiente de desenvolvimento/teste a partir do Visual Studio"
Speaking Points:TransitionVirtual machines provide a very flexible compute model. Another compute service available in Windows Azure is called Windows Azure Web Sites. Definition:Windows Azure Web Sites there is a managed service that you can use to run web sites and web APIs. Enable you to quickly stand up web applications and web sites on the internetAuto-managed environmentJust say that you want a web, here’s the DNS, copy the content, and we do the rest You don’t have to worry or think about VMs, servers, or infrastructure. You can simply focus on building and deploying HTTP based applications.Enables you to build web sites using ASP.NET, Node.js, PHP, and now with an update a few weeks ago – PythonAllows you to use any tool and any operating system to build these sites including Windows, OS X, and Linux. Enables a very fast deployment model. You can literally deploy in seconds. You can easily deploy these sites using the tools and infrastructure you know. We support several flexible deployment options including FTP, GIT, and Team Foundation ServicesWhat is nice about this offering is that not only does it enable to very quickly get going, but it also allows you to start with a free offer in a shared environment. Pricing starts at free.. Perpetually free and then you can scale up as you need more capabilityYou can then scale up these sites using reserved instances for higher performance and isolation and scale out these sites as your web site becomes successful and you have increased load.
Os sites são um serviço de hospedagem Web altamente escalonável para nuvens públicas e privadas. O serviço é otimizado para hospedagens econômicas em nuvem e integrado com as ferramentas, os frameworks e os aplicativos Web de código aberto mais populares do mundo.Crie serviços de hospedagem de sites escalonáveis, de alta densidade, simples de serem implantados e administrados, e opere milhares de sites em uma única web farm. A automação disponível diminui os custos de inclusão do cliente, ao passo que a medição e a otimização de recursos pode ajudar a adequar as ofertas do cliente.Suporta vários frameworks, como ASP.NET, ASP Clássico, PHP e Node.js, com integração total com o Git para controle do código-fonte. A integração da Galeria de Aplicativos Web permite que os clientes acessem aplicativos web populares.
Speaking Points:Just to recap When I’m running shared, multiple web sites from multiple customers are use the same virtual machine instances
Speaking Points:In shared mode the web sites can be scaled out to run on multiple shared instances,In this case Windows Azure provides load balancing of incoming requests resulting in better response time and performance for your application and higher availability
Speaking Points:If we really need to scale our application or we want to isolate our application, perhaps to use more memory, we can switch our app to reserved modeIn this case Windows Azure will use an instance out of the pool of available instances, deploy your site, and continue to serve up requests
Speaking Points:Just like with shared mode, we can also scale out with reserved mode, in which case the machine instances are registered with the load balancer for your web application.This can result in better response time, performance, and availability for your web application.
Speaking Points:What’s also cool is that you can have multiple sites in a reserved instance. So if you have three or four sites as I had in the demo, they can all run in my reserved instance, so I can be more efficient with using the resources. This is great if you want to run multiple sites for others or sites you want to run isolated
Ambiente de servidor Web tradicionalAté agora, o principal desafio enfrentado por serviços de hospedagem em relação à nossa arquitetura de aplicativos Web é que, nesse modelo, os aplicativos têm afinidade com apenas um servidor, e isso pode causar muitos problemas para uma web farm multilocatário de grande escala. Um aplicativo Web típico consiste de conteúdo armazenado em um diretório de arquivos, um ou mais bancos de dados e metadados de configuração exigidos pelo servidor Web. Esse modelo funciona bem para um número relativamente pequeno de aplicativos Web. Desenvolvedores e administradores podem controlar alguns aplicativos Web e garantir que recursos e dados de configuração externos permaneçam sincronizados.Contudo, esse modelo rapidamente se torna complicado, conforme aumenta o número de aplicativos Web sendo executados e um único ambiente:Há um limite efetivo além do qual novos servidores Web, de arquivos e de banco de dados são exigidos para suportar o aumento de carga e do número de aplicativos.Conforme o número de aplicativos Web e a quantidade de hardware e de máquinas virtuais aumenta, a complexidade de gerenciamento vai às alturas.Enquanto um modelo centrado em máquina pode ser simples de ser administrado quando o número de aplicativos Web é pequeno (por exemplo, com dezenas de aplicativos), gerenciar centenas deles pode se tornar rapidamente inviável. Se o número de aplicativos aumentar para alguns milhares, mesmo as abordagens tradicionais de gerenciamento por comandos, otimizadas para a gestão em massa de aplicativos, podem se tornar difíceis de serem escalonadas e mantidas.Conforme o número de aplicativos Web sendo executados em uma única web farm virtual aumenta ainda mais (para dezenas de milhares, por exemplo), os modelos de hospedagem "tradicionais" existentes simplesmente não conseguem acompanhar. Como os sites enxergam um aplicativo WebNo nível mais granular, um cluster aloca um aplicativo Web para um processo (ou processos) específico.Ao invés de configurar um servidor Web para executar um determinado aplicativo Web, o cluster "configura" um processo de trabalho para executar esse aplicativo. No diagrama, o servidor Web foi substituído por um processo de trabalho.Do ponto de vista do aplicativo, nada mudou. Ele ainda tem acesso para leitura e gravação em seus diretórios de conteúdo, além de acesso a bancos de dados nos servidores necessários. Nada muda no código do aplicativo — todas as APIs padrão usadas pelos desenvolvedores para a obtenção de acesso a recursos externos, como arquivos e bancos de dados, continuam funcionando como esperado.O processo de trabalho responsável pela execução do aplicativo Web é abastecido com todos os arquivos de configuração exigidos pelo aplicativo. Por exemplo, configurações específicas para Serviços de Informações da Internet estão disponíveis no arquivo applicationHost.config, que pode ser acessado pelo processo de trabalho. Da mesma forma, configurações específicas para cada tecnologia (como ASP.NET ou PHP) estão disponíveis em arquivos como web.config e php.ini, localizados na raiz.Tanto o aplicativo Web como o processo de trabalho não sabem que estão sendo executados em um cluster, ao contrário de um servidor Web de Serviços de Informações da Internet tradicional.
Os serviços de publicação realizam várias operações com arquivos na estrutura de diretórios do aplicativo Web.Publicadores autenticam desenvolvedores e permitem:fazer upload/instalar aplicativos Web;modificar aplicativos Web existentes;baixar cópias dos aplicativos Web.
Ferramentas de desenvolvimento, como Visual Studio e WebMatrix, estão profundamente integradas aos Sites no Windows Server.
Com suporte a ASP.NET, da versão 3.5 à 4.5Qualquer site ASP.NET existente pode ser movido facilmente. Isso é importante para clientes que querem aposentar o hardware local e parar de hospedar os próprios sites. Com os sites do Windows Azure, eles estão sempre executando em um hardware moderno, sem se preocupar com a manutenção.
No SDK 2.2, é possível depurar aplicativos remotos implantados em sites e serviços de nuvem.
Demonstração 3 – Implantar aplicativos MVC ASP.NET em sites do Azure(Opcional)Demonstração 4 – Implantar aplicativos LightSwitch em sites do Azure
Os Serviços Móveis são um back-end como serviço que facilita a implantação de aplicativos móveis conectados. Serviços similares incluem Parse, Kinvey e StackMob.Os Hubs de Notificação são um serviço de transmissão por push que também pode ser facilmente integrado com um back-end existente escrito em .NET, Node.js, etc. Um serviço similar é o Urban Airship.Serviços Móveis e Hubs de Notificação podem ser usados juntos. A melhor forma para utilizar os dois serviços em conjunto é usar os Serviços Móveis para push disparado por evento (como enviar uma notificação por push para o jogador 1 após o jogador 2 ter feito um movimento, em um jogo de lances alternados) e os Hubs de Notificação para push por difusão (como enviar uma oferta personalizada para todos os jogadores de uma só vez).Suporte imediato para Windows Store, Windows Phone, iOS e Android em ambos os serviços. Os Serviços Móveis também possuem um SDK HTML. Os dois serviços também contam com uma API REST aberta e flexível para a extensão de funcionalidades principais a plataformas adicionais.
O código no lado do servidor é o que permite cenários híbridos e o consumo de outros serviços do Windows Azure e de terceiros.Armazenamento estruturado com banco de dados SQLAponte vários aplicativos para o mesmo bd, particionadoAppX.TodoitemAppY.TodoitemGerencie os dados usando: Portal — Serviços Móveis ou SQL SQL Management Studio API REST Ferramentas CLI Suporte disponível para contas da Microsoft, Facebook, Twitter e GoogleConecte-se ao Active Directory do WA por meio do módulo do azure e, depois, ao ADFS a partir de láPermissões em nível de tabela para cada operação CRUDTodos, todos com chave de aplicativo, só usuários autenticados ou só scripts e administradoresControle mais granular com scripts no lado do servidoruser.level: {administrador, autenticado, anônimo}user.userID: id ou indefinido se não autenticadoIntegração com WNS, MPNS, APNS ou GCMPortal captura segredo do cliente WNS e SID do pacote push.wns* fornece: Modelo limpo de objeto para redigir notificaçõesAutenticação na WNS em nome do seu aplicativo
Demonstração 5 – Serviços Móveis do Visual Studio
Desenvolvedor envia uma única mensagem ao Hub de Notificação.Pode especificar rótulos. Assim, a mensagem só será direcionada aos registros que tenham esse determinado rótulo.Os modelos são aplicados quando a mensagem chega aos dispositivos.
Diferentes protocolos de comunicação para PNS' (p. ex., HTTP x TCP, carga xml x carga JSON).Diferente formatos de apresentação e funcionalidades (blocos x notificações do sistema x selos).PNS' fornece uma maneira de enviar uma mensagem para um dispositivo/canal.Geralmente, as notificações são destinadas a usuários ou grupos de interesse (p. ex., funcionários atribuídos a uma conta de usuário).O back-end de aplicativo precisa manter um registro associando identificadores de dispositivo a grupos de interesse/usuários.
O back-end de aplicativo precisa armazenar os identificadores atuais de cada dispositivo grande volume de armazenamento e altos custos de VMA transmissão para milhões de dispositivos com baixa latência exige paralelização (BD e VM).
Suporte e SDKs para .NET, Node e Serviços Móveis, mas você pode usar os Hubs de Notificação com um site do WA em Python se quiser utilizar a API REST.Rótulos são "lado servidor"; modelos são "lado cliente". O desenvolvedor não precisa criar ou manter uma tabela em um banco de dados contendo IDs de registro, rótulos de interesse, URIs de canal ou tokens de dispositivo. A tabela teria muitos "nulos" devido ao acréscimo de rótulos de interesse adicionais. O HN mantém uma lista precisa dos registros ativos, e o desenvolvedor não precisa criar um script para limpar registros ou tokens vencidos. (Enviar notificações repetidamente para dispositivos que desinstalaram seu aplicativo é um jeito rápido de ter os privilégios de push suspensos pela APNS, GCM etc.)
O back-end de aplicativo envia uma única mensagem para o Hub de Notificação, especificando o subconjunto de registros a ser alcançado com base nos rótulos. A carga inclui todos os conteúdos personalizáveis por meio de modelos (p. ex., diferentes idiomas, moedas, etc.). Essa mensagem só será enviada para mulheres, em Seattle, que gostam de sorvete de baunilha.O Hub de Notificação, então, distribui a mensagem para os serviços de notificação de todas as plataformas (APNS, GCM, MPNS, WNS) e especifica apenas os IDs de dispositivo, URIs de canal e tokens que estão associados com todos os rótulos, de forma que apenas o subconjunto desejado de usuários (mulher, Seattle, baunilha) receba a notificação.3. Os PNSs enviam a mensagem para todos os dispositivos designados pelos Hubs de Notificação.Se quiser enviar para todos os usuários, não especifique nenhum rótulo. Se quiser enviar apenas para um subconjunto, especifique rótulos de interesse. Isso inclui rótulos para a plataforma. Se você enviar uma mensagem sem especificar a plataforma e contar com os modelos para realizar a formatação no lado do cliente, as formatações serão diferentes, mas o conteúdo permanecerá o mesmo em todas elas (iOS/Android/Windows). Se você enviar uma mensagem com rótulos específicos para a plataformas a partir do back-end do seu aplicativo, a mensagem só será entregue às plataformas designadas. A mensagem de entrada pode conter uma notificação em formato nativo (WNS, APNS, GCM ou MPNS) ou um recipiente de propriedades independente de plataforma (veja a seção nos modelos). Dependendo do formato da notificação e dos rótulos na mensagem, a notificação será direcionada para um conjunto diferente de registros.Se quiser enviar uma notificação apenas para dispositivos iOS e Android (mas não Windows), especifique isso nos rótulos, e a mensagem só será entregue para esses dispositivos. Quando a mensagem chegar, um modelo será aplicado para exibi-la no formato adequado à plataforma (e às preferências definidas pelo usuário). Se quiser assegurar que a mesma mensagem seja exibida corretamente em diferentes plataformas (p. ex., notificação 03 no Windows e um faixa de alerta no iOS), isso deve ser feito através de modelos no lado do cliente.
O modelo pode exibir o conteúdo como uma notificação específica da plataforma (p. ex., notificação 03 para Windows Store x faixa para iOS) e também personalizá-lo segundo as preferências do usuário (ex.: idioma ou moeda). Todas as informações exibidas precisam estar contidas na mensagem enviada para o Hub de Notificação pelo back-end do aplicativo, embora seja o modelo do lado do cliente que vá determinar a porção da mensagem a ser realmente exibida.
Demonstração 6 – Notificações por push a partir do Visual Studio
Easily Connect ApplicationsService Bus Messaging provides out-of-the-box support for various messaging patterns that enable to easily connect applicationsQueues offer a reliable, durable, and highly scalable way to store messages as they travel between systems without losing messages in case connectivity fails, one of the systems is down or is a mobile device with limited connectivity. Queues support multiple senders as well as multiple receivers with automatic load balancing.Topics and Subscriptions implement a publish/subscribe pattern that delivers a highly scalable, flexible, and cost-effective way to publish messages from an application and deliver them to multiple subscribers.Broadcast a message to hundreds or thousands of subscribers on a given Topic.Distribute messages to individual subscribers or groups of Topic subscribers using message property based filtering rules.Advanced messaging features provide a variety of options for delivery assurance and performance tuning:Local TransactionsDe-duplicationScheduled deliveryDelivery confirmation (peek-lock)Delivery deferralClient-side pre-fetchBatched Send/Receive Connect Applications From AnywhereService Bus enables connecting applications that are distributed across public cloud as well as hybrid environments, and various platforms, in a loosely coupled mannerEnables connecting application across public cloud, public cloud and private cloud, and private cloud to private cloud through public cloud.Client applications can be running on PCs, mobile devices or in the browser. Service Bus Relay enables applications to securely call into private cloud applications hosted in your own datacenter behind firewalls and NATsEnterprises can use a SOA-based architecture and expose just the services they want to deliver from their private cloud environment which creates a more secure architecture than opening up a VPN.Supports various programing languages and platforms: .NET, WCF, REST, Java (Coming soon: Node.js, PHP)Supports a variety of different transport protocols and Web services standards, including REST, SOAP, and WS-*.One-way messaging between sender and listener supports unicast and multicast.Full-duplex connection-oriented sessions between sender and listener support bi-directional communication.Services discoverable through a stable, internet-accessible URL, regardless of location. Enterprise Grade Cloud ServiceManaged service operated by Microsoft with 99.9% monthly SLA. Service Bus takes care of delivery assurance, reliable messaging, scale and load balancing.Claim based security using the Windows Azure Access Control service supports identity federation with Active Directory as well as common web identity providers like Google, Yahoo and Facebook.Cloud hosted service relay and brokered messaging capabilities can be leveraged directly from anywhere without the need for IT to change network configuration or install gateway agents/devices.
Slide geral que cobre as TRÊS principais funcionalidades do BS, com exemplos de cenários de utilização. Talvez você só precise deste slide para explicar; ou pode usá-lo como slide de introdução antes de detalhar mais como cada uma das funcionalidades atua.
Filas e Tópicos estão relacionados ao sistema de mensagens. A outra principal funcionalidade provida pelo BS é o Relay, que fornece um mecanismo para permitir que aplicativos na nuvem comuniquem-se com aplicativos e serviços Web locais. Tradicionalmente, você teria que abrir os firewalls de segurança para permitir chamadas do serviço Web em sistemas locais. Com o Relay do BS, que é essencialmente uma camada de abstração, é possível intermediar a comunicação entre o requisitante da chamada e o sistema local.
Este slide apresenta mais alguns detalhes de como isso realmente funciona. O que acontece é que o serviço Web local (que vai realizar chamadas para outros sistemas locais) precisa estar registrado no Relay do BS e usar o protocolo/canal específico dele (pura mágica do WCF). Quando isso acontece, o serviço Web interno não escuta as solicitações no ponto de extremidade do Relay do BS nem na rede interna (ele pode fazer as duas coisas se você associar vários protocolos ao serviço).Quando um cliente faz uma chamada para o ponto de extremidade do Relay do BS, o BS retransmite a chamada para o serviço, que executa a solicitação e devolve o resultado de volta ao Relay e, então, ao cliente.
Office 365, Dynamics CRM Online, Windows Intune e outros serviços em nuvem de terceiros. O Active Directory do Windows Azure fornece um provedor de identidade baseado em nuvem que se integra facilmente com suas implantações AD locais, além de suporte completo a provedores de identidade de terceiros.Integre com seu Active Directory local Ofereça controle de acesso para seus aplicativos Crie conexões sociais em toda a empresa Forneça logon único em todos os seus aplicativos de nuvemHistórico do Active Directory do Windows AzureOs serviços do Ofice365 precisavam de acesso aos diretórios dos clientes para fornecer as melhores experiências da categoriaOfereça serviços de identidade às organizações sem diretórios locaisExecute em escala de internetOfereça multilocaçãoActive Directory do Windows AzureActive Directory revisado para funcionar como um serviço de diretório multilocatário em escala de Internet, criado simultaneamente com o Office 365Estende o Active Directory do Windows Server para nuvemEnquanto as empresas trabalham para consolidar diretórios locais, os aplicativos em nuvem estão fragmentando os diretórios...WAAD como diretório e Identidade como ServiçoConsolide a gestão de diretórios entre aplicativos de nuvemConecte-se ao diretório a partir de qualquer plataforma, qualquer dispositivoConecte-se com pessoas de provedores de identidade web e de outras organizações
Demonstração 7.1 - Criar um novo aplicativo ASP.NET MVC com segurança organizacional