Think Cloud! - Hands On @ ESTCB 24 Mar 2012

13
Cloud Computing Hands on 2012 @ ESTCB – Think Cloud!

description

Apresentação Hands on E

Transcript of Think Cloud! - Hands On @ ESTCB 24 Mar 2012

Page 1: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

Cloud ComputingHands on 2012 @ ESTCB – Think Cloud!

Page 2: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Agenda• O que é cloud computing• Providers• Formatos de Cloud Computing• Vantagens• Desvantagens• Azure Overview• Exemplo de Aplicação para Azure• Hands on – Desenvolvimento de aplicação DEMO• Verificação de conhecimentos

Page 3: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

O que é Cloud ComputingCloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility (like the electricity grid) over a network (typically the Internet).

Cloud computing provides computation, software applications, data access,data management and storage resources without requiring cloud users to know the location and other details of the computing infrastructure.

End users access cloud based applications through a web browser or a light weight desktop or mobile app while the business software and data are stored on servers at a remote location. Cloud application providers strive to give the same or better service and performance than if the software programs were installed locally on end-user computers.

Fonte: Wikipedia

Page 4: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Providers• Amazon – Elastic Cloud• Google – Google Apps• Microsoft – Azure• Apple – iCloud• ...

Page 5: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Formatos de Cloud Computing• IaaS – Infrastructure as a Service

– Disponibilização da infraestrutura, semelhante a um datacenter, mas virtualizado e em servidores de terceiros (provider). Tipicamente disponibilizam serviços de VM, storage, load balance, rede

• PaaS – Plataform as a Service– Permite a execução de aplicações na cloud, web servers, base de

dados

• SaaS – Software as a Service– Aplicações disponibilizadas na cloud sem necessidade de instalar

nenhum componente na máquina do cliente. Este tipo de soluções é tipicamente disponibilizada através de um browser. (Office 365, CRM, ActionFlow!)

Page 6: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Vantagens• Não existe licenciamento• Não existem custos de hardware• Pay as you go• Escalibilidade• Disponibilidade (em muitos casos o SLA é de 99,95%)• Não há necessidade de instalar software na máquina cliente• ???

Page 7: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Desvantagens• Integração – Se for necessária a migração de dados da

infraestrutura interna de forma periódica, passa a haver a necessidade de ter aplicações a correr “dentro de casa”

• Segurança? – Em alguns casos pode ser encarado com “desconfiança” o facto de colocar informação critica na cloud

• Preço – em alguns casos o preço ainda pode ser tido em conta, mas também temos de reflectir em relação aos custos no modelo convencional

• ???

Page 8: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Azure Overview• Junção dos conceitos de PaaS e IaaS• Corre aplicações desenvolvidas em tecnologias Microsoft, mas

também Java, Node.js, PHP, etc..• Serviços principais:

– Runtime environment – VM– Storage (Blob storage, Table, Queue)– Base de Dados– Reporting– ...

Page 9: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Azure Overview• Roles

– As roles são utilizadas quando queremos iniciar uma plataforma de runtime ou VM. No caso da plataforma de runtime temos a WebRole, ServiceRole e WorkerRole

• WebRole – Front-end da aplicação, tipicamente um portal web• ServiceRole – Pode ser WCF, RIA Services, tipicamente utilzada para disponibilizar

serviços e não interfaces. Ideal para um desenvolvimento utilizando uma arquitectura orientada para serviços (SOA)

• WorkerRole – Tipicamente utilizada para trabalho de background

– Podemos criar tantas instâncias das roles quantas quisermos – o preço é também definido em horas de computação (quantas mais roles e instâncias maior será a factura mensal)

Page 10: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Azure Overview• Princing

– Horas de computação– Transacções de storage– GB de storage– Largura de banda consumida– Tamanho da cache– ...– Exemplo: Para a nossa aplicação de exemplo em que teremos duas

roles (WebRole e WorkerRole) com uma instância cada, uma base de dados de 1GB, utilização de MQ para comunicação entre a WebRole e a WorkerRole e digamos que um consumo de largura de banda de 10 GB por mês, o custo seria de $41.20/mês (aproximadamente)

Page 11: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Exemplo de Aplicação para Azure• Aplicação web que escreve nick e texto em uma base de

dados• No front-end o utilizador introduz o nick e o texto, a página

faz um pedido AJAX ao servidor (WebRole)• Após receber o pedido, a WebRole escreve o nick e o texto no

Message Queue• A WorkerRole verifica a existência de novas mensagens na

MQ e caso exista escreve na base de dados

Page 12: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

©Methodus Inovação - 2012

Hands On

Desenvolvimento de aplicação DEMO

Page 13: Think Cloud!  - Hands On @ ESTCB 24 Mar 2012

Sandro Martins | CTO @ MTDS [email protected] | 939 701 400Skype: sandro.martins82 | FB: /sandromartins82www.methodus.com