Pangea - Plataforma digital com Google Cloud Platform

download Pangea - Plataforma digital com Google Cloud Platform

of 74

  • date post

    12-Apr-2017
  • Category

    Internet

  • view

    543
  • download

    0

Embed Size (px)

Transcript of Pangea - Plataforma digital com Google Cloud Platform

  • Plataforma Digital com Google Cloud PlatformLevando sua arquitetura para as nuvens!

    Collaborate. Innovate. Transform.

  • Andr Paulovicharquiteto de softwares

    andrepg@ciandt.com | @andrepaulovich

    Collaborate. Innovate. Transform.

    MCP | MCTS | MCT | MCAD | MCSD.Net | MVP Asp.Net 2011-2014

  • Vivemos uma nova era...

  • Nossa noo de sucesso mudou muito

  • Fonte: ProgrammableWeb

    Clube dos Bilhes

    5+ Bilhes de Calls/Dia1+ Bilhes de Calls/Dia

  • Como possvel?

  • Manutenvel Disponvel Escalvel

    Econmico

  • Manutenvel Disponvel Escalvel

    Econmico

  • Manutenvel Disponvel Escalvel

    Econmico

  • Manutenvel Disponvel Escalvel

    Econmico

  • Manutenvel Disponvel Escalvel

    Econmico

  • Plataforma Digital

  • Manutenvel Disponvel Escalvel

    Econmico

  • Porque eu escolheria a Google?

  • Razo #1 - Estar na mesma infraestrutura do Google

    Desenvolver na mesma infra estrutura que permite ao Google responder a bilhes de pesquisas em segundos.

    E que tambm prov mais de 6 bilhes de horas de vdeo no YouTube por ms, alm de garantir um servio de email a mais de 425 milhes de usurios do Gmail.

    Rede global Redundncia Infraestrutura inovadora

  • Distribuio Global

  • Razo #2 - Se concentrar no seu produto

    Desenvolver rapidamente, publicar e interagir suas aplicaes sem se preocupar com overheads de administrao. O Google vai gerenciar sua aplicao, base de dados e todos os servidores de armazenamento para voc.

    Servios gerenciados. SDK para desenvolvedores Painis de administrao simplificados

  • Razo #3 - Grande variedade de servios

    Mquinas virtuais, plataforma gerenciada, blog storage, bancos de dados NoSQL e relacionais (MySQL). Big Data para anlise de grandes volumes de dados e tudo isso numa plataforma de servios que ir oferecer tudo que sua aplicao vai demandar arquiteturalmente.

    Computao Armazenamento Servios

  • Razo #4 - Escalar para milhes de usurios

    Aplicaes hospedadas na plataforma do Google podem escalar automaticamente para garantir a resposta da sua aplicao diretamente proporcional ao trfego demandado. Ento voc ir pagar apenas pelo que realmente usar.

    Scale-up (adio de recursos) Scale-down (remoo de recursos)

  • Tempo

    Cap

    acid

    ade

    de T

    I

    Carga

    Alocao de capacidades

    Desperdcio de capacidades

    Falta de capacidades

    Previso de carga

    Padro de Crescimento de Capacidade de TI

  • CargaReduo do

    investimento inicial

    Reduo do excesso de TI

    Sem falta de capacidades

    Reduo das capacidades

    nos momentos de reduo da

    carga

    Tempo

    Cap

    acid

    ade

    de T

    I

    Previso de carga

    Escalvel

  • Razo #5 - Performance garantida

    A infraestrutura do Google garante consistncia na performance de CPU, memria e disco sempre! E a rede global de cache ir responder rapidamente aos usurios onde quer que eles estejam no globo.

    CPU, Memria e Disco Rede Global Manuteno transparente

  • Razo #6 - Todo suporte que voc precisar

    Com uma comunidade que no para de crescer, uma rede de parceiros e a possibilidade de adquirir um suporte Premium o Google, prov uma completa variedade de recursos para ajud-lo a iniciar e crescer usando os recursos da plataforma.

  • Razo #7 - Preo, preo e preo

    A precificao dos servios do Google muito agressiva. Eles realmente fazem valer a lei de Moore. comum o Google reduzir valores de seus servios.

  • Evoluindo na nuvem...

  • Nveis de aderncia...

  • IaaS

    Virtualizao

    Fsico Virtual IaaS

    Nuvem

  • PaaS

    Virtualizao

    Fsico Virtual IaaS PaaS

    Nuvem

  • Exemplo de Configurao de AutoScaler

  • Sempre que voc disponibiliza uma verso da sua aplicao, o Google versiona cada deploy e lhe permite inclusive voltar para uma verso anterior da aplicao com apenas um click.

    boa uma prtica, relacionar o nmero do seu build (jenkins) com o nome da verso no app engine permitindo uma rastreabilidade.

    DevOps de lambuja

  • A SDK no implementa 100% da especificao, mas no se preocupe muito j est quase l.

    AppEngine SDK no JEE

    Componentes mais comuns suportados

    Java Data Objects (JDO) Java Persistence API (JPA) Java Server Faces (JSF) 1.1 - 2.0 Java Server Pages (JSP) + JSTL Java Servlet API 2.4 JavaBeans Activation Framework (JAF) Java Architecture for XML Binding (JAXB) Java API for XML Web Services (JAX-WS) JavaMail XML processing APIs including DOM, SAX, and XSLT

    Enterprise Java Beans (EJB) JAX-RPC Java Database Connectivity (JDBC) Java EE Connector Architecture (JCA) Java Management Extensions (JMX) Java Message Service (JMS) Java Naming and Directory Interface (JNDI) Remote Method Invocation (RMI)

    Tentativa de categorizar o que funciona ou no compatvel:

    https://code.google.com/p/googleappengine/wiki/WillItPlayInJava

    Componentes mais comuns no suportados

    https://code.google.com/p/googleappengine/wiki/WillItPlayInJavahttps://code.google.com/p/googleappengine/wiki/WillItPlayInJava

  • SaaS

    Virtualizao

    Fsico SaaSVirtual IaaS PaaS

    Nuvem

  • Resume a...

  • On the line

    Clickgram

  • Voc o responsvel pela infraestrutura de um novo aplicativo chamado Clickgram.

    O Clickgram permite que qualquer pessoa compartilhe uma foto com seus amigos em apenas um clique!

    Chegou o momento de voc colocar o aplicativo no ar e seu chefe exigiu que no ocorram problemas de escalabilidade ou de disponibilidade.

  • Requisio Resposta

    JAVA

    MySQLREDIS HD

  • Requisio Resposta

    Servidor 01

    JAVA

    MySQLREDIS HD

  • Mas lembre-se de que precisa ser

    escalvel!

  • Servidor 01

    JAVA

    MySQLREDIS HD

    Servidor 02

    JAVA

    MySQLREDIS HD

    Requisio Resposta Requisio Resposta

  • MySQLREDIS HD

    Parece bom, mas as camadas de dados no so escalveis simplesmente dobrando os servidores.

    E agora?!

  • Requisio Resposta

    Servidor 01

    JAVA

    MySQLREDIS HD

    Novamente parece muito bom!

    Esta abordagem de montar um servidor mais potente vai funcionar por um tempo, mas tem um limite fsico.

  • Voltamos estaca zero!

  • Dica de ouro!

  • Servidor Servidor

    Servidor Servidor

    JAVA

    MySQL

    REDIS

    HD

    Isole cada componente da sua aplicao!

  • Problema: O banco de dados est muito lento.O que fazer?

  • Servidor (master) Servidor

    Servidor Servidor

    JAVA

    MySQL

    REDIS

    HD

    Um master-slave pode funcionar!

    Servidor (slave)

    MySQL

  • Os bancos relacionais, so limitados!

    (DBAs por favor sem polmica)

  • Servidor Servidor

    Servidor Servidor

    JAVA

    NoSQL

    REDIS

    HD

    Mas considere usar bancos NO-SQL

  • Problema: A quantidade de escritas e leituras no sistema de arquivos (armazenamento de fotos) precisa aumentar.

    O que fazer?

  • Servidor Servidor

    Servidor Servidor

    JAVA

    NoSQL

    REDIS

    Storage

    No use um sistema de arquivos convencional.

  • Problema: O sistema de cache precisa de mais memria.O que fazer?

  • Servidor Servidor

    Servidor Servidor

    JAVA

    NoSQL

    REDIS + Memria

    Storage

    Neste caso, aumentar a memria de um servidor basta!

  • Problema: A aplicao no est atendendo todas as requisies por conta de limitao do processamento.

    O que fazer?

  • Servidor

    Servidor

    Servidor Servidor

    JAVA

    NoSQL

    REDIS + Memria

    Storage

    Dobramos a aplicao e adicionamos um balanceador de carga! Voil!

    Servidor

    JAVA

    Servidor

    LoadBalancerRequisio

    Resposta

  • Servidor

    Servidor

    Servidor Servidor

    GAE

    DataStore

    GAE - MEMCACHE

    Cloud Storage

    Servidor

    GAE

    Servidor

    Cloud NetworkingRequisio

    Resposta

    Viso usando a plataforma digital do google.

  • Servidor

    Servidor Servidor

    GAE

    DataStore

    GAE - MEMCACHE

    Servidor

    GAE

    Servidor

    Cloud NetworkingRequisio

    Resposta

    Indo ainda alm pense fora da caixa.

  • THANKYOU FOR

    YOURTIME!

  • Links teis

    Google Cloud Platform Developers Portal: https://cloud.google.com/developers Google Developers Global Portal: https://developers.google.com Google Cloud Platform Products list: https://cloud.google.com/products/compute-engine Understanding Google APIs: https://fethidilmi.blogspot.com/2013/01/understandinggoogle-apis.html

    https://cloud.google.com/developershttps://developers.google.comhttps://cloud.google.com/products/compute-engine/https://fethidilmi.blogspot.com/2013/01/understandinggoogle-apis.html

  • Referncias

    Google Cloud Platform: Quick Overview - Fethi Dilmi Google AppEngine: Desafios da adoo de cloud no mercado de seguros - Gustavo Concon Cloud Computing: De tendencia a realidade - Jose Papo

    http://pt.slideshare.net/delphiexile/google-cloud-platform-overview-28927697http://pt.slideshare.net/delphiexile/google-cloud-platform-overview-28927697http://pt.slideshare.net/GustavoConcon/google-app-engine-desafios-da-adoo-de-cloud-no-mercado-de-seguros-25817668?qid=936a7f12-68a1-45aa-8c20-ac5bdabe15bb&v=def