SlideShare uma empresa Scribd logo
1 de 51
Baixar para ler offline
Desenvolvendo aplicações
Móveis na Nuvem da AWS

José Papo
AWS Tech Evangelist
@josepapo
Suportando as principais aplicações Móveis
5 bilhões de celulares no mundo


Mais de 1 milhão de apps nas App Stores


  32 bilhões de apps serão baixadas em 2012


50 bilhões de dólares em apps e músicas
O problema
Onde hospedar os dados
  de meus usuários?
Infraestrutura Tradicional é Cara e Complexa

     Preços Altos para Infraestrutura de TI   Recursos de TI com Baixa Utilização

Provedores Lentos para Atender
     a Demanda de Infra                             Data Center sem Espaço

 Gerenciar Crescimento Físico                         Implantações Demoradas


Negociação de Contratos                               Instalação de Patches


    Altos Investimentos de Capital                 Falta de foco no negócio




 “TI gasta 80% de seu tempo e recursos mantendo as luzes acesas”

    Gartner Press Release, 2006
O que realmente
 precisamos é…




                                                     …capacidade ajustável
http://www.flickr.com/photos/purecaffeine/30268245
Escalabilidade simples e automática
                                                  App de Vídeos com Amazon EC2:
                                                 De 50 a 5,000 servidores em 3 dias!

5,000
 Número de Instâncias EC2




             0
                            Segunda   Terça   Quarta   Quinta   Sexta   Sábado   Domingo
Conteúdo Dinâmico da
  Aplicação Móvel
Amazon EC2
Servidores on-demand
Precificação por
      hora
Exemplo
         Servidor Micro
On-demand 100% - A partir de 15 dólares
Reservado 100% - A partir de 6,5 dólares
Bancos de Dados
   Relacional e NoSQL
Opções de Bancos de Dados

     Relacional             NoSQL
Modelos de Bancos de Dados

    Auto-gestão                      Database as a Service




 Banco de Dados no          Amazon Relational        Amazon DynamoDB
    Amazon EC2            Database Service (RDS)          NoSQL

Sua escolha de software      Oracle ou MySQL         Modelo não relacional
  de banco de dados       oferecidos como serviço

Bring Your Own License                                Overhead zero de
        (BYOL)             Licenciamento Flexível:
                                                       administração
                          BYOL ou Licença Incluída
Conteúdo Estático da
  Aplicação Móvel
Amazon S3
Armazenamento Elástico
Crescimento do Amazon S3
Número de Objetos Armazenados no Amazon S3                                 1
                                                                         Trilhão
                                                           762 Bilhões




                                             262 Bilhões


                               102 Bilhões
     14 Bilhões   40 Bilhões

        Q4 2007      Q4 2008      Q4 2009       Q4 2010        Q4 2011    Q2 2012
1b    Tb
SLA
99,999999999%
   Durabilidade
Amazon S3
Amazon CloudFront
Rede de Distribuição de Conteúdo Flexível
Locais Edge AWS (CloudFront & Route 53)
Benefícios da Nuvem
para aplicações móveis
Aberta e flexível
Sistemas Operacionais   Linguagens e Bibliotecas   Aplicações Certificadas
Infraestrutura Global
GovCloud    US West       US West    US East       South          EU         Asia          Asia
 (US ITAR   (Northern     (Oregon)   (Northern    America       (Ireland)   Pacific       Pacific
  Region)   California)               Virginia)   (Sao Paulo)               (Singapore)   (Tokyo)




   Regiões AWS
   Pontos Edge AWS
Construída com altos padrões de segurança



                          Suas
                          Apps




            Infraestrutura de Segurança AWS
                  SOC 1/SSAE 16/ISAE 3402,
               ISO 27001, PCI DSS, HIPAA, ITAR,
                  FISMA Moderate, FIPS 140-2
Exemplos de aplicações
   móveis na Nuvem
SDKs para os principais smartphones


                                 SOAP
                                 REST
DynamoDBKeySchemaElement *kse = [[[DynamoDBKeySchemaElement alloc]
                            initWithAttributeName:@"userNo"
                            andAttributeType:@"N"] autorelease];

DynamoDBKeySchema *ks = [[[DynamoDBKeySchema alloc]
                     initWithHashKeyElement:kse] autorelease];

DynamoDBProvisionedThroughput *pt = [[[DynamoDBProvisionedThroughput alloc] init]
autorelease];
pt.readCapacityUnits = [NSNumber numberWithInt:10];
pt.writeCapacityUnits = [NSNumber numberWithInt:5];

DynamoDBCreateTableRequest *request = [[DynamoDBCreateTableRequest alloc]
                                 initWithTableName:TEST_TABLE_NAME
                                 andKeySchema:ks
                                 andProvisionedThroughput:pt];

DynamoDBCreateTableResponse *response = [[AmazonClientManager ddb]
createTable:request];
[request release];
RegisterDeviceRequest registerDeviceRequest = new RegisterDeviceRequest(
                this.endpoint, this.useSSL, uid, key);
ResponseHandler handler = new ResponseHandler();

response = this.processRequest(registerDeviceRequest, handler);
if (response.requestWasSuccessful()) {
          AmazonSharedPreferencesWrapper.registerDeviceId(
                         this.sharedPreferences, uid, key);
}


AmazonDynamoDBClient ddb = UserPreferenceDemoActivity.clientManager.ddb();

KeySchemaElement kse = new KeySchemaElement().withAttributeName(
                "userNo").withAttributeType(ScalarAttributeType.N);
KeySchema ks = new KeySchema().withHashKeyElement(kse);
ProvisionedThroughput pt = new ProvisionedThroughput()
                .withReadCapacityUnits(10l).withWriteCapacityUnits(5l);

CreateTableRequest request = new CreateTableRequest()
               .withTableName(PropertyLoader.getInstance().getTestTableName())
               .withKeySchema(ks).withProvisionedThroughput(pt);

ddb.createTable(request);
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
[self presentModalViewController:imagePicker animated:YES];



AmazonS3Client *s3 = [[[AmazonS3Client alloc]
initWithAccessKey:MY_ACCESS_KEY_ID withSecretKey:MY_SECRET_KEY]
autorelease];



S3PutObjectRequest *por = [[[S3PutObjectRequest alloc]
initWithKey:MY_PICTURE_NAME inBucket:MY_PICTURE_BUCKET] autorelease];
por.contentType = @"image/jpeg";
por.data = imageData;
[s3 putObject:por];
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*");
startActivityForResult(intent, PHOTO_SELECTED);




AmazonS3Client s3Client = new AmazonS3Client( new BasicAWSCredentials(
MY_ACCESS_KEY_ID, MY_SECRET_KEY ) );




PutObjectRequest por = new PutObjectRequest( Constants.getPictureBucket(),
Constants.PICTURE_NAME, new java.io.File( filePath) );
s3Client.putObject( por );
Nuvem é Democracia!
Nuvem é Liberdade!
OFERTA
   GRATUITA!
aws.amazon.com/pt/free
OBRIGADO!
       aws.typepad.com/brasil
        slideshare.net/jpapo

José Papo
AWS Tech Evangelist
@josepapo
Desenvolvendo aplicações móveis na Nuvem

Mais conteúdo relacionado

Mais procurados

Work Cloud - Descobrindo o Microsoft Azure
Work Cloud - Descobrindo o Microsoft AzureWork Cloud - Descobrindo o Microsoft Azure
Work Cloud - Descobrindo o Microsoft AzureLucas Chies
 
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...Walter Coan
 
Escalando para os primeiros 10 milhões de usuários
Escalando para os primeiros 10 milhões de usuáriosEscalando para os primeiros 10 milhões de usuários
Escalando para os primeiros 10 milhões de usuáriosAmazon Web Services LATAM
 
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2Amazon Web Services LATAM
 
Introduçao à Internet das Coisas com AWS IoT
Introduçao à Internet das Coisas com AWS IoT Introduçao à Internet das Coisas com AWS IoT
Introduçao à Internet das Coisas com AWS IoT Amazon Web Services LATAM
 
O que uma enterprise deveria fazer nos primeiros 90 dias
O que uma enterprise deveria fazer nos primeiros 90 diasO que uma enterprise deveria fazer nos primeiros 90 dias
O que uma enterprise deveria fazer nos primeiros 90 diasAmazon Web Services LATAM
 
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...Walter Coan
 
Evento IoT Weekend - Azure IoT Edge
Evento IoT Weekend - Azure IoT EdgeEvento IoT Weekend - Azure IoT Edge
Evento IoT Weekend - Azure IoT EdgeWalter Coan
 
Arquiteturas Cloud: Uma Introdução
Arquiteturas Cloud: Uma IntroduçãoArquiteturas Cloud: Uma Introdução
Arquiteturas Cloud: Uma IntroduçãoJose Papo, MSc
 
Iniciando com AWS Lambda e serverless em cloud
Iniciando com AWS Lambda e serverless em cloudIniciando com AWS Lambda e serverless em cloud
Iniciando com AWS Lambda e serverless em cloudAmazon Web Services LATAM
 

Mais procurados (20)

Deep dive com Microserviços e Docker
Deep dive com Microserviços e DockerDeep dive com Microserviços e Docker
Deep dive com Microserviços e Docker
 
Falando sobre DevOps no azure
Falando sobre DevOps no azureFalando sobre DevOps no azure
Falando sobre DevOps no azure
 
Escalando com segurança na AWS
Escalando com segurança na AWSEscalando com segurança na AWS
Escalando com segurança na AWS
 
Work Cloud - Descobrindo o Microsoft Azure
Work Cloud - Descobrindo o Microsoft AzureWork Cloud - Descobrindo o Microsoft Azure
Work Cloud - Descobrindo o Microsoft Azure
 
Deep dive de AWS IoT
Deep dive de AWS IoTDeep dive de AWS IoT
Deep dive de AWS IoT
 
Azure @ Rio Cloud Meetup
Azure @ Rio Cloud MeetupAzure @ Rio Cloud Meetup
Azure @ Rio Cloud Meetup
 
Automatização de Ambientes CI & CD & DevOps
Automatização de Ambientes CI & CD & DevOpsAutomatização de Ambientes CI & CD & DevOps
Automatização de Ambientes CI & CD & DevOps
 
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...
MVPConf 2021 - .NET + Azure Functions Dicas e truques no desenvolvimento serv...
 
Escalando para os primeiros 10 milhões de usuários
Escalando para os primeiros 10 milhões de usuáriosEscalando para os primeiros 10 milhões de usuários
Escalando para os primeiros 10 milhões de usuários
 
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2
Visão Geral da Nuvem da AWS e como estimar sua conta Parte 1 de 2
 
Introduçao à Internet das Coisas com AWS IoT
Introduçao à Internet das Coisas com AWS IoT Introduçao à Internet das Coisas com AWS IoT
Introduçao à Internet das Coisas com AWS IoT
 
O que uma enterprise deveria fazer nos primeiros 90 dias
O que uma enterprise deveria fazer nos primeiros 90 diasO que uma enterprise deveria fazer nos primeiros 90 dias
O que uma enterprise deveria fazer nos primeiros 90 dias
 
Segurança de ponta a ponta na AWS
Segurança de ponta a ponta na AWSSegurança de ponta a ponta na AWS
Segurança de ponta a ponta na AWS
 
Criando e conectando seu datacenter virtual
Criando e conectando seu datacenter virtualCriando e conectando seu datacenter virtual
Criando e conectando seu datacenter virtual
 
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...
SQLSaturday 2019 - Desafios e tendências na utilização de bancos de dados par...
 
Simplifique o seu BI com a AWS
Simplifique o seu BI com a AWSSimplifique o seu BI com a AWS
Simplifique o seu BI com a AWS
 
Evento IoT Weekend - Azure IoT Edge
Evento IoT Weekend - Azure IoT EdgeEvento IoT Weekend - Azure IoT Edge
Evento IoT Weekend - Azure IoT Edge
 
Arquiteturas Cloud: Uma Introdução
Arquiteturas Cloud: Uma IntroduçãoArquiteturas Cloud: Uma Introdução
Arquiteturas Cloud: Uma Introdução
 
What's New On Azure IaaS
What's New On Azure IaaSWhat's New On Azure IaaS
What's New On Azure IaaS
 
Iniciando com AWS Lambda e serverless em cloud
Iniciando com AWS Lambda e serverless em cloudIniciando com AWS Lambda e serverless em cloud
Iniciando com AWS Lambda e serverless em cloud
 

Destaque

Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Elo7
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosAmazon Web Services LATAM
 
Growth Hacks: Como viralizar e crescer seu produto ou startup
Growth Hacks: Como viralizar e crescer seu produto ou startupGrowth Hacks: Como viralizar e crescer seu produto ou startup
Growth Hacks: Como viralizar e crescer seu produto ou startupJose Papo, MSc
 
Requirement Hacks - Agile Trends 2013
Requirement Hacks - Agile Trends 2013Requirement Hacks - Agile Trends 2013
Requirement Hacks - Agile Trends 2013Jose Papo, MSc
 
Gato ou gado? Como você trata seus servidores?
Gato ou gado? Como você trata seus servidores?Gato ou gado? Como você trata seus servidores?
Gato ou gado? Como você trata seus servidores?Jose Papo, MSc
 
Como a Nuvem pode ajudar os testes
Como a Nuvem pode ajudar os testesComo a Nuvem pode ajudar os testes
Como a Nuvem pode ajudar os testesJose Papo, MSc
 
Requirement Hacks - BA Brazil 2013
Requirement Hacks - BA Brazil 2013Requirement Hacks - BA Brazil 2013
Requirement Hacks - BA Brazil 2013Jose Papo, MSc
 
Amazon Web Services: Economia, Inovação e Revolução da Nuvem
Amazon Web Services:  Economia, Inovação e Revolução da NuvemAmazon Web Services:  Economia, Inovação e Revolução da Nuvem
Amazon Web Services: Economia, Inovação e Revolução da NuvemJose Papo, MSc
 
Acelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNAcelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNJose Papo, MSc
 
Big Data e as Tecnologias Disruptivas - TDC 2014
Big Data e as Tecnologias Disruptivas - TDC 2014Big Data e as Tecnologias Disruptivas - TDC 2014
Big Data e as Tecnologias Disruptivas - TDC 2014Jose Papo, MSc
 
Requirement Hacks: Validando Hipóteses like a Boss
Requirement Hacks: Validando Hipóteses like a BossRequirement Hacks: Validando Hipóteses like a Boss
Requirement Hacks: Validando Hipóteses like a BossJose Papo, MSc
 
Oportunidades da Nuvem para a Educação, a Pesquisa e o Governo
Oportunidades da Nuvem para a Educação, a Pesquisa e o GovernoOportunidades da Nuvem para a Educação, a Pesquisa e o Governo
Oportunidades da Nuvem para a Educação, a Pesquisa e o GovernoJose Papo, MSc
 
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web Services
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web ServicesDesenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web Services
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web ServicesJose Papo, MSc
 
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...Jose Papo, MSc
 
Monetizacao e Hipoteses orientadas a objetivos
Monetizacao e Hipoteses orientadas a objetivosMonetizacao e Hipoteses orientadas a objetivos
Monetizacao e Hipoteses orientadas a objetivosJose Papo, MSc
 
Introdução ao Google Cloud Platform: Computação em Nuvem do Google
Introdução ao Google Cloud Platform: Computação em Nuvem do GoogleIntrodução ao Google Cloud Platform: Computação em Nuvem do Google
Introdução ao Google Cloud Platform: Computação em Nuvem do GoogleJose Papo, MSc
 
Novidades do Google I/O 2014 - Uma Visão
Novidades do Google I/O 2014 - Uma VisãoNovidades do Google I/O 2014 - Uma Visão
Novidades do Google I/O 2014 - Uma VisãoJose Papo, MSc
 
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...Jose Papo, MSc
 

Destaque (20)

Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...Automatizando a implantação e operação de aplicações conteinerizadas no...
Automatizando a implantação e operação de aplicações conteinerizadas no...
 
Recuperación de desastres en AWS
 Recuperación de desastres en AWS Recuperación de desastres en AWS
Recuperación de desastres en AWS
 
Escalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuariosEscalando para sus primeros 10 millones de usuarios
Escalando para sus primeros 10 millones de usuarios
 
Growth Hacks: Como viralizar e crescer seu produto ou startup
Growth Hacks: Como viralizar e crescer seu produto ou startupGrowth Hacks: Como viralizar e crescer seu produto ou startup
Growth Hacks: Como viralizar e crescer seu produto ou startup
 
Requirement Hacks - Agile Trends 2013
Requirement Hacks - Agile Trends 2013Requirement Hacks - Agile Trends 2013
Requirement Hacks - Agile Trends 2013
 
Gato ou gado? Como você trata seus servidores?
Gato ou gado? Como você trata seus servidores?Gato ou gado? Como você trata seus servidores?
Gato ou gado? Como você trata seus servidores?
 
Como a Nuvem pode ajudar os testes
Como a Nuvem pode ajudar os testesComo a Nuvem pode ajudar os testes
Como a Nuvem pode ajudar os testes
 
Requirement Hacks - BA Brazil 2013
Requirement Hacks - BA Brazil 2013Requirement Hacks - BA Brazil 2013
Requirement Hacks - BA Brazil 2013
 
Amazon Web Services: Economia, Inovação e Revolução da Nuvem
Amazon Web Services:  Economia, Inovação e Revolução da NuvemAmazon Web Services:  Economia, Inovação e Revolução da Nuvem
Amazon Web Services: Economia, Inovação e Revolução da Nuvem
 
Acelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDNAcelerando sites e aplicações Web com uma CDN
Acelerando sites e aplicações Web com uma CDN
 
Big Data e as Tecnologias Disruptivas - TDC 2014
Big Data e as Tecnologias Disruptivas - TDC 2014Big Data e as Tecnologias Disruptivas - TDC 2014
Big Data e as Tecnologias Disruptivas - TDC 2014
 
Requirement Hacks: Validando Hipóteses like a Boss
Requirement Hacks: Validando Hipóteses like a BossRequirement Hacks: Validando Hipóteses like a Boss
Requirement Hacks: Validando Hipóteses like a Boss
 
Oportunidades da Nuvem para a Educação, a Pesquisa e o Governo
Oportunidades da Nuvem para a Educação, a Pesquisa e o GovernoOportunidades da Nuvem para a Educação, a Pesquisa e o Governo
Oportunidades da Nuvem para a Educação, a Pesquisa e o Governo
 
Product Hacks
Product HacksProduct Hacks
Product Hacks
 
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web Services
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web ServicesDesenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web Services
Desenvolvendo aplicacoes moveis Android na Nuvem da Amazon Web Services
 
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...
A Nova Era Industrial: Internet das Coisas e como escalar uma startup de hard...
 
Monetizacao e Hipoteses orientadas a objetivos
Monetizacao e Hipoteses orientadas a objetivosMonetizacao e Hipoteses orientadas a objetivos
Monetizacao e Hipoteses orientadas a objetivos
 
Introdução ao Google Cloud Platform: Computação em Nuvem do Google
Introdução ao Google Cloud Platform: Computação em Nuvem do GoogleIntrodução ao Google Cloud Platform: Computação em Nuvem do Google
Introdução ao Google Cloud Platform: Computação em Nuvem do Google
 
Novidades do Google I/O 2014 - Uma Visão
Novidades do Google I/O 2014 - Uma VisãoNovidades do Google I/O 2014 - Uma Visão
Novidades do Google I/O 2014 - Uma Visão
 
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...
TCO (Total Cost of Ownership) e a Nuvem: Como os clientes da AWS estão econom...
 

Semelhante a Desenvolvendo aplicações móveis na Nuvem

Os benefícios de migrar seus workloads de Big Data para a AWS
Os benefícios de migrar seus workloads de Big Data para a AWSOs benefícios de migrar seus workloads de Big Data para a AWS
Os benefícios de migrar seus workloads de Big Data para a AWSAmazon Web Services LATAM
 
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...Amazon Web Services LATAM
 
Amazon S3 - Introdução, Benefícios e Dicas
Amazon S3 - Introdução, Benefícios e DicasAmazon S3 - Introdução, Benefícios e Dicas
Amazon S3 - Introdução, Benefícios e DicasJose Papo, MSc
 
Porque ir para a Nuvem e escolher a Amazon Web Services
Porque ir para a Nuvem e escolher a Amazon Web ServicesPorque ir para a Nuvem e escolher a Amazon Web Services
Porque ir para a Nuvem e escolher a Amazon Web ServicesAmazon Web Services LATAM
 
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...Lumis
 
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...Jose Papo, MSc
 
Introduçãoo aws, escalando uma aplicação Web
Introduçãoo aws, escalando uma aplicação WebIntroduçãoo aws, escalando uma aplicação Web
Introduçãoo aws, escalando uma aplicação WebAlessandro Binhara
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalAmazon Web Services LATAM
 
Webinar: O que é computação em nuvem com a AWS?
Webinar: O que é computação em nuvem com a AWS?Webinar: O que é computação em nuvem com a AWS?
Webinar: O que é computação em nuvem com a AWS?Amazon Web Services
 
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...Amazon Web Services LATAM
 
Conhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSConhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSAmazon Web Services LATAM
 
Seu futuro está na Nuvem! Oportunidades com Computação em Nuvem
Seu futuro está na Nuvem! Oportunidades com Computação em NuvemSeu futuro está na Nuvem! Oportunidades com Computação em Nuvem
Seu futuro está na Nuvem! Oportunidades com Computação em NuvemJose Papo, MSc
 
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...Jose Papo, MSc
 

Semelhante a Desenvolvendo aplicações móveis na Nuvem (20)

Arquiteturas de Software para o Século XXI
Arquiteturas de Software para o Século XXIArquiteturas de Software para o Século XXI
Arquiteturas de Software para o Século XXI
 
Os benefícios de migrar seus workloads de Big Data para a AWS
Os benefícios de migrar seus workloads de Big Data para a AWSOs benefícios de migrar seus workloads de Big Data para a AWS
Os benefícios de migrar seus workloads de Big Data para a AWS
 
S3 - Amazon
S3 - AmazonS3 - Amazon
S3 - Amazon
 
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
Escalabilidade para sua solução na Nuvem da AWS de um para centenas de milhõe...
 
Visão Geral da Nuvem da AWS
Visão Geral da Nuvem da AWSVisão Geral da Nuvem da AWS
Visão Geral da Nuvem da AWS
 
Amazon S3 - Introdução, Benefícios e Dicas
Amazon S3 - Introdução, Benefícios e DicasAmazon S3 - Introdução, Benefícios e Dicas
Amazon S3 - Introdução, Benefícios e Dicas
 
Porque ir para a Nuvem e escolher a Amazon Web Services
Porque ir para a Nuvem e escolher a Amazon Web ServicesPorque ir para a Nuvem e escolher a Amazon Web Services
Porque ir para a Nuvem e escolher a Amazon Web Services
 
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...
Reduzindo a complexidade de seus projetos e otimizando seus investimentos com...
 
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...
Como a Amazon Web Services pode ajudar sua startup ou empresa a crescer e pro...
 
Introduçãoo aws, escalando uma aplicação Web
Introduçãoo aws, escalando uma aplicação WebIntroduçãoo aws, escalando uma aplicação Web
Introduçãoo aws, escalando uma aplicação Web
 
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +finalEscalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
Escalando+na+aws+para+os+primeiros+10+milhões+de+usuários+ +final
 
Webinar: O que é computação em nuvem com a AWS?
Webinar: O que é computação em nuvem com a AWS?Webinar: O que é computação em nuvem com a AWS?
Webinar: O que é computação em nuvem com a AWS?
 
Introducao a aws storage backup e archiving
Introducao a aws storage backup e archivingIntroducao a aws storage backup e archiving
Introducao a aws storage backup e archiving
 
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
Migrando seu banco de dados para a AWS - Deep Dive em Amazon RDS e AWS Databa...
 
Conhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWSConhecendo as opcoes de Storage na Nuvem da AWS
Conhecendo as opcoes de Storage na Nuvem da AWS
 
Rodando SAP na AWS
Rodando SAP na AWSRodando SAP na AWS
Rodando SAP na AWS
 
Seu futuro está na Nuvem! Oportunidades com Computação em Nuvem
Seu futuro está na Nuvem! Oportunidades com Computação em NuvemSeu futuro está na Nuvem! Oportunidades com Computação em Nuvem
Seu futuro está na Nuvem! Oportunidades com Computação em Nuvem
 
Desenvolvendo aplicacoes moveis com a Nuvem
Desenvolvendo aplicacoes moveis com a NuvemDesenvolvendo aplicacoes moveis com a Nuvem
Desenvolvendo aplicacoes moveis com a Nuvem
 
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...
Software as a Service: Oportunidades, Desafios e como a AWS pode ajudar nessa...
 
Introducao à Nuvem da Amazon Web Services
Introducao à Nuvem da Amazon Web ServicesIntroducao à Nuvem da Amazon Web Services
Introducao à Nuvem da Amazon Web Services
 

Mais de Jose Papo, MSc

Machine Learning e AI - O que o Google oferece
Machine Learning e AI - O que o Google ofereceMachine Learning e AI - O que o Google oferece
Machine Learning e AI - O que o Google ofereceJose Papo, MSc
 
Por que o Google Cloud Platform é diferente
Por que o Google Cloud Platform é diferentePor que o Google Cloud Platform é diferente
Por que o Google Cloud Platform é diferenteJose Papo, MSc
 
Machine learning and TensorFlow
Machine learning and TensorFlowMachine learning and TensorFlow
Machine learning and TensorFlowJose Papo, MSc
 
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...Jose Papo, MSc
 
Introdução ao Firebase
Introdução ao FirebaseIntrodução ao Firebase
Introdução ao FirebaseJose Papo, MSc
 
Ferramentas e programas do Google para startups e apps
Ferramentas e programas do Google para startups e appsFerramentas e programas do Google para startups e apps
Ferramentas e programas do Google para startups e appsJose Papo, MSc
 
As 8 características de um gestor e líder no "Estilo Google"
As 8 características de um gestor e líder no "Estilo Google"As 8 características de um gestor e líder no "Estilo Google"
As 8 características de um gestor e líder no "Estilo Google"Jose Papo, MSc
 
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen The Hyper Connected Era: Mobile First, Cloud First and Multi Screen
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen Jose Papo, MSc
 
Mobile, UX e Micro-momentos
Mobile, UX e Micro-momentosMobile, UX e Micro-momentos
Mobile, UX e Micro-momentosJose Papo, MSc
 
Cloud Computing: De tendencia a realidade
Cloud Computing: De tendencia a realidadeCloud Computing: De tendencia a realidade
Cloud Computing: De tendencia a realidadeJose Papo, MSc
 
Novidades do Google IO 2015
Novidades do Google IO 2015Novidades do Google IO 2015
Novidades do Google IO 2015Jose Papo, MSc
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasJose Papo, MSc
 
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-Screen
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-ScreenA Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-Screen
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-ScreenJose Papo, MSc
 
Como organizar e definir ritmo em sua startup/empresa "Google Style"
Como organizar e definir ritmo em sua startup/empresa "Google Style"Como organizar e definir ritmo em sua startup/empresa "Google Style"
Como organizar e definir ritmo em sua startup/empresa "Google Style"Jose Papo, MSc
 
Google BigQuery - Introdução
Google BigQuery - IntroduçãoGoogle BigQuery - Introdução
Google BigQuery - IntroduçãoJose Papo, MSc
 
Introdução ao pitch de ouro
Introdução ao pitch de ouroIntrodução ao pitch de ouro
Introdução ao pitch de ouroJose Papo, MSc
 
Sete dicas para criar produtos inovadores na Era das Tecnologias Disruptivas
Sete dicas para criar produtos inovadores na Era das Tecnologias DisruptivasSete dicas para criar produtos inovadores na Era das Tecnologias Disruptivas
Sete dicas para criar produtos inovadores na Era das Tecnologias DisruptivasJose Papo, MSc
 
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...Jose Papo, MSc
 
Elaborando hipóteses like a Boss
Elaborando hipóteses like a BossElaborando hipóteses like a Boss
Elaborando hipóteses like a BossJose Papo, MSc
 

Mais de Jose Papo, MSc (19)

Machine Learning e AI - O que o Google oferece
Machine Learning e AI - O que o Google ofereceMachine Learning e AI - O que o Google oferece
Machine Learning e AI - O que o Google oferece
 
Por que o Google Cloud Platform é diferente
Por que o Google Cloud Platform é diferentePor que o Google Cloud Platform é diferente
Por que o Google Cloud Platform é diferente
 
Machine learning and TensorFlow
Machine learning and TensorFlowMachine learning and TensorFlow
Machine learning and TensorFlow
 
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...
Serverless: Um novo paradigma de arquitetura de aplicações - Exemplos com Fir...
 
Introdução ao Firebase
Introdução ao FirebaseIntrodução ao Firebase
Introdução ao Firebase
 
Ferramentas e programas do Google para startups e apps
Ferramentas e programas do Google para startups e appsFerramentas e programas do Google para startups e apps
Ferramentas e programas do Google para startups e apps
 
As 8 características de um gestor e líder no "Estilo Google"
As 8 características de um gestor e líder no "Estilo Google"As 8 características de um gestor e líder no "Estilo Google"
As 8 características de um gestor e líder no "Estilo Google"
 
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen The Hyper Connected Era: Mobile First, Cloud First and Multi Screen
The Hyper Connected Era: Mobile First, Cloud First and Multi Screen
 
Mobile, UX e Micro-momentos
Mobile, UX e Micro-momentosMobile, UX e Micro-momentos
Mobile, UX e Micro-momentos
 
Cloud Computing: De tendencia a realidade
Cloud Computing: De tendencia a realidadeCloud Computing: De tendencia a realidade
Cloud Computing: De tendencia a realidade
 
Novidades do Google IO 2015
Novidades do Google IO 2015Novidades do Google IO 2015
Novidades do Google IO 2015
 
Opções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e ArquiteturasOpções de Backends para seus apps móveis: Análise e Arquiteturas
Opções de Backends para seus apps móveis: Análise e Arquiteturas
 
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-Screen
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-ScreenA Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-Screen
A Nova Era Hiper Conectada: Mobile-First, Cloud-First e Multi-Screen
 
Como organizar e definir ritmo em sua startup/empresa "Google Style"
Como organizar e definir ritmo em sua startup/empresa "Google Style"Como organizar e definir ritmo em sua startup/empresa "Google Style"
Como organizar e definir ritmo em sua startup/empresa "Google Style"
 
Google BigQuery - Introdução
Google BigQuery - IntroduçãoGoogle BigQuery - Introdução
Google BigQuery - Introdução
 
Introdução ao pitch de ouro
Introdução ao pitch de ouroIntrodução ao pitch de ouro
Introdução ao pitch de ouro
 
Sete dicas para criar produtos inovadores na Era das Tecnologias Disruptivas
Sete dicas para criar produtos inovadores na Era das Tecnologias DisruptivasSete dicas para criar produtos inovadores na Era das Tecnologias Disruptivas
Sete dicas para criar produtos inovadores na Era das Tecnologias Disruptivas
 
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...
Big Bang Disruption: Como as tendências digitais disruptivas estão revolucion...
 
Elaborando hipóteses like a Boss
Elaborando hipóteses like a BossElaborando hipóteses like a Boss
Elaborando hipóteses like a Boss
 

Desenvolvendo aplicações móveis na Nuvem

  • 1. Desenvolvendo aplicações Móveis na Nuvem da AWS José Papo AWS Tech Evangelist @josepapo
  • 2. Suportando as principais aplicações Móveis
  • 3. 5 bilhões de celulares no mundo Mais de 1 milhão de apps nas App Stores 32 bilhões de apps serão baixadas em 2012 50 bilhões de dólares em apps e músicas
  • 4.
  • 5.
  • 6. O problema Onde hospedar os dados de meus usuários?
  • 7. Infraestrutura Tradicional é Cara e Complexa Preços Altos para Infraestrutura de TI Recursos de TI com Baixa Utilização Provedores Lentos para Atender a Demanda de Infra Data Center sem Espaço Gerenciar Crescimento Físico Implantações Demoradas Negociação de Contratos Instalação de Patches Altos Investimentos de Capital Falta de foco no negócio “TI gasta 80% de seu tempo e recursos mantendo as luzes acesas” Gartner Press Release, 2006
  • 8. O que realmente precisamos é… …capacidade ajustável http://www.flickr.com/photos/purecaffeine/30268245
  • 9.
  • 10. Escalabilidade simples e automática App de Vídeos com Amazon EC2: De 50 a 5,000 servidores em 3 dias! 5,000 Número de Instâncias EC2 0 Segunda Terça Quarta Quinta Sexta Sábado Domingo
  • 11. Conteúdo Dinâmico da Aplicação Móvel
  • 14. Exemplo Servidor Micro On-demand 100% - A partir de 15 dólares Reservado 100% - A partir de 6,5 dólares
  • 15. Bancos de Dados Relacional e NoSQL
  • 16. Opções de Bancos de Dados Relacional NoSQL
  • 17. Modelos de Bancos de Dados Auto-gestão Database as a Service Banco de Dados no Amazon Relational Amazon DynamoDB Amazon EC2 Database Service (RDS) NoSQL Sua escolha de software Oracle ou MySQL Modelo não relacional de banco de dados oferecidos como serviço Bring Your Own License Overhead zero de (BYOL) Licenciamento Flexível: administração BYOL ou Licença Incluída
  • 18. Conteúdo Estático da Aplicação Móvel
  • 20. Crescimento do Amazon S3 Número de Objetos Armazenados no Amazon S3 1 Trilhão 762 Bilhões 262 Bilhões 102 Bilhões 14 Bilhões 40 Bilhões Q4 2007 Q4 2008 Q4 2009 Q4 2010 Q4 2011 Q2 2012
  • 21. 1b  Tb
  • 22. SLA 99,999999999% Durabilidade
  • 23.
  • 25.
  • 26. Amazon CloudFront Rede de Distribuição de Conteúdo Flexível
  • 27. Locais Edge AWS (CloudFront & Route 53)
  • 28.
  • 29. Benefícios da Nuvem para aplicações móveis
  • 30. Aberta e flexível Sistemas Operacionais Linguagens e Bibliotecas Aplicações Certificadas
  • 31. Infraestrutura Global GovCloud US West US West US East South EU Asia Asia (US ITAR (Northern (Oregon) (Northern America (Ireland) Pacific Pacific Region) California) Virginia) (Sao Paulo) (Singapore) (Tokyo) Regiões AWS Pontos Edge AWS
  • 32.
  • 33.
  • 34. Construída com altos padrões de segurança Suas Apps Infraestrutura de Segurança AWS SOC 1/SSAE 16/ISAE 3402, ISO 27001, PCI DSS, HIPAA, ITAR, FISMA Moderate, FIPS 140-2
  • 35. Exemplos de aplicações móveis na Nuvem
  • 36. SDKs para os principais smartphones SOAP REST
  • 37.
  • 38. DynamoDBKeySchemaElement *kse = [[[DynamoDBKeySchemaElement alloc] initWithAttributeName:@"userNo" andAttributeType:@"N"] autorelease]; DynamoDBKeySchema *ks = [[[DynamoDBKeySchema alloc] initWithHashKeyElement:kse] autorelease]; DynamoDBProvisionedThroughput *pt = [[[DynamoDBProvisionedThroughput alloc] init] autorelease]; pt.readCapacityUnits = [NSNumber numberWithInt:10]; pt.writeCapacityUnits = [NSNumber numberWithInt:5]; DynamoDBCreateTableRequest *request = [[DynamoDBCreateTableRequest alloc] initWithTableName:TEST_TABLE_NAME andKeySchema:ks andProvisionedThroughput:pt]; DynamoDBCreateTableResponse *response = [[AmazonClientManager ddb] createTable:request]; [request release];
  • 39.
  • 40. RegisterDeviceRequest registerDeviceRequest = new RegisterDeviceRequest( this.endpoint, this.useSSL, uid, key); ResponseHandler handler = new ResponseHandler(); response = this.processRequest(registerDeviceRequest, handler); if (response.requestWasSuccessful()) { AmazonSharedPreferencesWrapper.registerDeviceId( this.sharedPreferences, uid, key); } AmazonDynamoDBClient ddb = UserPreferenceDemoActivity.clientManager.ddb(); KeySchemaElement kse = new KeySchemaElement().withAttributeName( "userNo").withAttributeType(ScalarAttributeType.N); KeySchema ks = new KeySchema().withHashKeyElement(kse); ProvisionedThroughput pt = new ProvisionedThroughput() .withReadCapacityUnits(10l).withWriteCapacityUnits(5l); CreateTableRequest request = new CreateTableRequest() .withTableName(PropertyLoader.getInstance().getTestTableName()) .withKeySchema(ks).withProvisionedThroughput(pt); ddb.createTable(request);
  • 41.
  • 42. UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; imagePicker.delegate = self; [self presentModalViewController:imagePicker animated:YES]; AmazonS3Client *s3 = [[[AmazonS3Client alloc] initWithAccessKey:MY_ACCESS_KEY_ID withSecretKey:MY_SECRET_KEY] autorelease]; S3PutObjectRequest *por = [[[S3PutObjectRequest alloc] initWithKey:MY_PICTURE_NAME inBucket:MY_PICTURE_BUCKET] autorelease]; por.contentType = @"image/jpeg"; por.data = imageData; [s3 putObject:por];
  • 43.
  • 44. Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.setType("image/*"); startActivityForResult(intent, PHOTO_SELECTED); AmazonS3Client s3Client = new AmazonS3Client( new BasicAWSCredentials( MY_ACCESS_KEY_ID, MY_SECRET_KEY ) ); PutObjectRequest por = new PutObjectRequest( Constants.getPictureBucket(), Constants.PICTURE_NAME, new java.io.File( filePath) ); s3Client.putObject( por );
  • 45.
  • 46.
  • 49. OFERTA GRATUITA! aws.amazon.com/pt/free
  • 50. OBRIGADO! aws.typepad.com/brasil slideshare.net/jpapo José Papo AWS Tech Evangelist @josepapo