34
Globalcode Open4education Trilha Java Sua aplicação Java flutuando nas nuvens Leandro Guimarães

TDC2012 - Sua aplicação JAVA flutuando nas nuvens

  • Upload
    dextra

  • View
    323

  • Download
    3

Embed Size (px)

DESCRIPTION

Introdução aos principais serviços na nuvem para a plataforma Java em dois dos maiores players deste tipo de solução: Amazon Web Services (AWS) e Google Application Engine (GAE). - por Leandro Guimarães

Citation preview

Page 1: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Trilha – Java

Sua aplicação Java flutuando nas nuvens

Leandro Guimarães

Page 2: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

about.me/leguimas

Leandro Guimarães

1997 2003

2008

Page 3: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 4: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 5: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 6: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

cloud computingUso de recursos computacionais (software ehardware) que são oferecidos como serviçoatravés de uma rede, tipicamente a internet.

Page 7: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

agilidadecapacidade de reestruturação dos recursos de infraestrutura

apipermitir uma fácil interação com os recursos na nuvem

escalabilidade e elasticidade Utilização on-demand baseado em auto-serviços em tempo, quase, real

confiabilidaderedundância de recursos

custoredução de custos uma vez que os recursos podem ser compartilhados

Page 8: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 9: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 10: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 11: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

IAAS PAASInfrastructure as a service Platform as a service

Page 12: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Page 13: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4educationPAAS

Page 14: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

http://aws.amazon.com

Datacenters nos EUA, Europa, Brasil, Cingapura e Japão;

Suporte à aplicações em Java, PHP e .Net (AWS Beanstalk);

Recursos podem ser distribuídos em várias regiões;

Plano free por 1 ano para recursos com quotas mensais;

Page 15: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Um war deployado em “um” Tomcat;

Deploy utilizando AWS Console, toolkit do Eclipse, APIs ou Maven;

Configurações para escalabilidade via AWS Console;

A cobrança para ter sua aplicação no ar é da mesma forma que a cobrança do EC2;

Beanstalk

Page 16: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Simple Storage Service (S3)

Storage persistente de arquivos de 1 byte a 5 Tb cada;

Interface para gerenciamento dos arquivos através de SOAP, REST ou bibliotecas específicas;

Preço de armazenamento começa com USD 0.125/GB;

GET https://bucket.s3.amazonaws.com/my-image.jpg

PUT https://bucket.s3.amazonaws.com/my-image.jpg

Page 17: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Relational Database Service (RDS)

Configuração, operação e escalonamento de Banco de Dados relacional (Oracle, MySQL e SQL Server);

Utilize a implementação que preferir para se integrar com o banco de dados;

Preço de instância começa com USD 0.025/hora;

Você também paga o armazenamento e a transferência dos dados;

Page 18: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Amazon DynamoDB

Solução NOSql (chave-valor) da Amazon;

Integração utilizando “jar” específico para a manipulação dos dados;

Preços começam em USD 0.01/hora para cada 10 unidade de gravação e USD 0.01/hora para cada 50 unidades de leitura;

Você também paga o armazenamento e a transferência dos dados;

Page 19: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Amazon ElastiCache

Cache em memória compatível com o protocolo memcached;

Necessária a implementação para a gestão do cache em memória com bibliotecas específicas para isso;

Preços começam em USD 0.090/hora para um nó de cache padrão pequeno;

Page 20: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Amazon Simple Queue Service (SQS)

Sistema de mensageria “semelhante” ao JMS;

Interações com filas através de biblioteca específica e, também, via API REST;

Preços começam em USD 0.01/10.000 solicitações para o Amazon SQS;

Page 21: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Amazon Simple Email Service (SES)

Plataforma para envio de e-mails utilizando uma biblioteca específica;

Mesmo mecanismo utilizado para o envio de e-mails na Amazon.com;

Preços começam em USD 0.10/1.000 mensagens enviadas pelo Amazon SQS;

Page 22: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

https://developers.google.com/appengine

Execute seus aplicativos da web na infraestrutura do Google;

Suporte à aplicações em Java, Python e Go!;

Todos os recursos dentro da mesma plataforma;

Quota gratuita renovada diariamente;

Page 23: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Um war deployado nos servidores da Google;

Deploy utilizando GAE Console, toolkit do Eclipse, scripts ou Maven;

Configurações para escalabilidade via GAE Console e de alguns recursos via XML;

Interação com o servidor via Servlet;

Não é possível realizar chamadas a recursos externos cuja resposta demore mais de 30 segundos;

GAE Java

Page 24: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Armazenamento de arquivos;

Integração através de biblioteca própria aonde cada blob é identificado por uma chave;

Preço de armazenamento: USD 0.13/GB/mês após sua quota diária de 5 Gb;

Existe o Cloud Storage mas que está em fase experimental;

GAE Blobstore

Page 25: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Instâncias de MySQL na nuvem;

Documentação mostra utilização com JDBC;

Preço de utilização começa em USD 1.46/dia ou USD 0.10/hora;

Cloud SQL

Page 26: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Solução NOSql (BigTable) com as entidades sendo representadas por um tipo, um identificador e seu conteúdo;

Implementação utilizando JDO, JPA ou uma biblioteca de serviços específicos;

Consultas baseadas em índices pré-”buildados”;

Preço de utilização: USD 0.10/100k de operações de escrita e USD 0.07/100k de operações de leitura após a quota diária de

50k de operações;

GAE Datastore

Page 27: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Cache em memória compatível com o protocolo memcached;

Necessária a implementação para a gestão do cache em memória utilizando JCache ou uma biblioteca específica;

É um serviço gratuito mas que precisa seguir algumas restrições definidas pelo GAE;

GAE Memcache

Page 28: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Plataforma para a execução de tasks em background;

A implementação pode ser utilizada com as bibliotecas específicas e, também, com uma API Rest experimental;

Possibilidade de se configurar a taxa de processamento desejada para uma determinada fila;

É um serviço gratuito mas que precisa seguir algumas restrições definidas pelo GAE;

GAE Task Queue

Page 29: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Serviço para o envio e recebimento de e-mails através do GAE;

Pode ser implementado utilizando JavaMail ou uma biblioteca específica;

Preço de utilização: USD 0.01/100 destinatários após sua quota diária de 100 destinatários;

GAE Mail

Page 30: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4educationPAAS

Page 31: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Amazon GAEFrontend 0.08 / hora 0.08 / hora

Armazenamento 0.125 / Gb / mês 0.13 / Gb / mês

Persistência de dados

0.025 / hora0.10 / hora1.46 / dia

Pesistência de dados (NOSql)

0.01 / hora (10 unidades WRITE)0.01 / hora (50 unidades READ)

0.10 / 100k operações escrita0.07 / 100l operações leitura

Cache 0.90 / hora 0

Mensageria 0.01 / 10k solicitações 0

E-mail 0.10 / 1k envios 0.01 / 100 destinatários

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

Page 32: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Possibilidades mais diversificadas: menos plataforma dependente;

Possibilidade de ter os serviços contratados / utilizados separadamente;

Possibilidade de simular o gasto mensal;

Datacenter no Brasil;

Faturamento pelo Brasil através de empresas terceiras;

Documentação bem robusta e cases bastante interessantes;

Sempre lançam novidades;

Page 33: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

Tem o respaldo da infraestrutura do Google por trás;

From developers to developers;

Poder de escalabilidade monstruoso (testes internos realizados);

Documentação mais simples mas na medida;

Não possui datacenter no Brasil;

Vem avançando bastante na evolução da plataforma;

Estão lançando, experimentalmente, um mecanismo de busca(carta na manga?)

Page 34: TDC2012 - Sua aplicação JAVA flutuando nas nuvens

Globalcode – Open4education

@leguimas

[email protected]

leguimas