introdução ao windows azure

57
Introdução ao Fernando Correia setembro 2011

Upload: fernando-correia

Post on 14-Jun-2015

1.243 views

Category:

Technology


1 download

DESCRIPTION

Visão geral sobre computação em nuvem e Windows Azure com foco em desenvolvimento de aplicativos em .NET.

TRANSCRIPT

Page 1: Introdução ao Windows Azure

Introdução ao

Fernando Correia

setembro 2011

Page 2: Introdução ao Windows Azure

Temas

Computação em nuvem

Windows Azure

Demo: Hello, World!

Arquitetura: GuestBook

Arquitetura: Serviços REST

Recursos

Page 3: Introdução ao Windows Azure

Computação em nuvem - NIST

um modelo para habilitar acesso por rede

sob demanda e conveniente a um

conjunto compartilhado de recursos de

computação configuráveis (como redes,

servidores, armazenamento, aplicativos e

serviços) que possam ser rapidamente

provisionados e liberados com o mínimo

de esforço de gerenciamento ou interação

com o fornecedor do serviço

Page 4: Introdução ao Windows Azure

Computação em nuvem -

Gartner

um estilo de computação

em que recursos escaláveis

e elásticos

habilitados por tecnologia da informação

são fornecidos como um serviço

para clientes externos

utilizando tecnologias da Internet

Page 5: Introdução ao Windows Azure

Atributos

Baseada em serviços

Escalável e elástica

Compartilhada

Medida pelo uso

Usando tecnologias da Internet

Page 6: Introdução ao Windows Azure
Page 7: Introdução ao Windows Azure
Page 8: Introdução ao Windows Azure

Camadas de abstração

Infraestrutura como serviço (IaaS)

Plataforma como serviço (PaaS)

Aplicação como serviço (SaaS)

Page 9: Introdução ao Windows Azure
Page 10: Introdução ao Windows Azure

AplicativosDados

Windows Azure

Page 11: Introdução ao Windows Azure
Page 12: Introdução ao Windows Azure
Page 13: Introdução ao Windows Azure

Windows Azure

Networking

“Red Dog” Front End (RDFE)

Plataforma Windows Azure

Page 14: Introdução ao Windows Azure

Plataforma Windows Azure

Windows Azure

SQL Azure

Windows Azure AppFabric

Windows Azure Marketplace

Page 15: Introdução ao Windows Azure

Windows Azure

Compute

Web, Worker, VM

Storage

Tables, Blobs, Drives, Queues

Fabric Controller

“kernel”

Content Delivery Network

Virtual Network

Connect, Traffic Manager

Page 16: Introdução ao Windows Azure
Page 17: Introdução ao Windows Azure
Page 18: Introdução ao Windows Azure
Page 19: Introdução ao Windows Azure
Page 20: Introdução ao Windows Azure
Page 21: Introdução ao Windows Azure
Page 22: Introdução ao Windows Azure
Page 23: Introdução ao Windows Azure

SQL Azure

SQL Azure Database

SQL Azure Reporting

SQL Azure Data Sync

Page 24: Introdução ao Windows Azure

AppFabric

Access Control

AppFabric Applications

Service Bus

Caching

Integration

Page 25: Introdução ao Windows Azure

Marketplace

Applications

DataMarket

Page 26: Introdução ao Windows Azure

Linguagens

.NET (C#, VB, F#, ...)

PHP

Ruby

Python

Java

Page 27: Introdução ao Windows Azure

Ferramentas

Windows Azure Tools for Microsoft Visual Studio

Visual Studio LightSwitch

Windows Azure Tools for Eclipse

Windows Azure Starter Kit for Java

Windows Azure Toolkit for iOS

Windows Azure Toolkit for Android

Windows Azure Toolkit for Windows Phone 7

Windows Azure Command-Line Tools for PHP Developers

Windows Azure Toolkit for Social Games

Page 28: Introdução ao Windows Azure

Cenários de uso

Page 29: Introdução ao Windows Azure
Page 30: Introdução ao Windows Azure
Page 31: Introdução ao Windows Azure
Page 32: Introdução ao Windows Azure
Page 33: Introdução ao Windows Azure
Page 34: Introdução ao Windows Azure
Page 36: Introdução ao Windows Azure

Hello, World!

HOSTED SERVICE

PAPEL: FRONT-END

ASP.NET MVC 3 website

DEFINIÇÃO

Tipo: Web Role

Tamanho da VM: Small

Endpoints: Input/HTTP

CONFIGURAÇÃO

Instâncias: 2

Update Domains: 2

Fault Domains: 2

Page 37: Introdução ao Windows Azure

Date Fri, 25 Aug 2000 11:09:12 -0700 (PDT)

From Linus Torvalds

Subject Re: SCO: "thread creation is about a thousand times faster than

onnative

On Fri, 25 Aug 2000, Jamie Lokier wrote:

>

> Well well. I think it's possible to over the best of user-space "fake"

> threads plus the advantages of "true" kernel threads in one blindingly

> fast combination, in less than 8kB per thread.

Talk is cheap. Show me the code.

Linus

github.com/fernandoacorreia/HelloAzureMvc

Page 39: Introdução ao Windows Azure

GuestBook

HOSTED SERVICE

PAPEL: FRONT-END

ASP.NET WebForms

DEFINIÇÃO

Tipo: Web Role

Tamanho da VM: Small

Endpoints: Input/HTTP

CONFIGURAÇÃO

Instâncias: 2

Update Domains: 2

Fault Domains: 2

PAPEL: MIDDLE TIER

Class Library

DEFINIÇÃO

Tipo: Worker Role

Tamanho da VM: Large

Endpoints: (nenhum)

CONFIGURAÇÃO

Instâncias: 3

Update Domains: 2

Fault Domains: 2

Page 40: Introdução ao Windows Azure
Page 41: Introdução ao Windows Azure

BlobContainerAccount

sally

pictures

IMG001.JPG

IMG002.JPG

movies MOV1.AVI

Blob Service

Page 42: Introdução ao Windows Azure

Table Service

Page 43: Introdução ao Windows Azure

Queue Service

Page 44: Introdução ao Windows Azure

Projete para falhas

Escalabilidade horizontal para:

Capacidade

Redundância

Comunicação assíncrona

Tempos de espera curtos

Tentar novamente se indisponível

Operações idempotentes

Sem estado

armazenamento externo

Page 46: Introdução ao Windows Azure

Arquitetura: Serviços REST

Page 47: Introdução ao Windows Azure

2008: Flex + App Engine

Page 48: Introdução ao Windows Azure

2008

Cliente: ActionScript + Flex

Formato: AMF

Serviço: Python / webapp

Storage: App Engine datastore

Plataforma: Google App Engine

fernandoacorreia.wordpress.com/2008/08/23/example-of-ria-in-the-cloud/

github.com/fernandoacorreia/flex-and-python-test

Page 49: Introdução ao Windows Azure

2011: JavaScript + Azure

Browser

Aplicativo RIA

Internet

Windows Azure

Web Service

Table Service

Page 52: Introdução ao Windows Azure

Recursos

www.microsoft.com/windowsazure

Introducing Windows Azure bit.ly/ouEXWx

How Azure actually works bit.ly/pZK5aQ

plataformanuvem.wordpress.com/tag/azure

Page 53: Introdução ao Windows Azure
Page 54: Introdução ao Windows Azure
Page 55: Introdução ao Windows Azure
Page 56: Introdução ao Windows Azure
Page 57: Introdução ao Windows Azure

Fernando Correia

@facorreia

paponuvem.com