SlideShare uma empresa Scribd logo
Porque o Google (quase)
      sempre responde as minhas
              perguntas?


Fernanda G Weiden
Site Reliability Engineer
Cluster Management
Missão

"to organize the world's information and make it
       universally accessible and useful"
O que o Google faz?




e muito mais...
O que está por trás disso tudo?
Sysadmin na indústria...

• Black-box software
   o pouca instrumentação, se existente


• Dimensionamento de hardware
  o baseado nas necessidades do software
  o impulsionado por fornecedores


• Monitoramento
  o Reação a falhas e imprevistos
Ooops...
Site Reliability Engineering

• "hope is not a strategy"
  o   se você pensa que pode quebrar, provavelmente vai
  o   se você pensa que não vai quebrar, definitivamente vai
  o   de uma maneira que você não pensou
  o   espetacular e "bizarramente"
Reliability by Wikipedia

 "Ability of a person or system to perform and maintain its
  functions in routine circumstances, as well as hostile or
                 unexpected circumstances."
Site Reliability Engineering

• 50% sysadmins, 50% engenheiros de software
• Acesso completo ao código fonte
   o participação em revisão de design
• PRR
• Instalação
   o dimensionamento “job” - CPU, RAM, disk, network
• Capacity Planning
   o crescimento orgânico, mudanças de infraestrutura,
     lançamento de funcionalidades
• Monitores/alertas
• Gerenciamento de clusters
• Lançamento de software
• Engenharia de software
Site Reliability Engineering

• Código fonte é tudo
   o código controlado
   o builds e rollouts automatizados
• Sistema de revisão em par
   o estritos critérios de aceitação
   o guias de estilo, testes de pre-submit
   o subject ownership/expertise
• Processo flexível: time, experts
• Engineering driven (not management)
   o Critérios técnicos prevalecem
Números que todos engenheir@s de
computação deveria saber...
L1 cache reference                           0.5 ns
Branch mispredict                              5 ns
L2 cache reference                             7 ns
Mutex lock/unlock                            100 ns
Main memory reference                        100 ns
Compress 1K bytes with Zippy               2,500 ns
Send 2K bytes over 1 Gbps network         20,000 ns
Read 1 MB sequentially from memory       250,000 ns
Round trip within same datacenter        500,000 ns
Disk seek                             10,000,000 ns
Read 1 MB sequentially from network   10,000,000 ns
Read 1 MB sequentially from disk      30,000,000 ns
Send packet CA->Netherlands->CA       150,000,000 ns
Filosofia de hardware no Google

•   Eficiência em consumo de energia
•   Datacenters com alta densidade de uso
•   Software deve sobreviver outages planejados ou não
•   Replique serviços inteiros, e não componentes de hardware
Um ano na vida de um cluster...

~0.5 overheating (power down most machines in <5 mins, ~1-2 days to recover)
~1 PDU failure (~500-1000 machines suddenly disappear, ~6 hours to come
back)
~1 rack-move (plenty of warning, ~500-1000 machines powered down, ~6 hours)
~1 network rewiring (rolling ~5% of machines down over 2-day span)
~20 rack failures (40-80 machines instantly disappear, 1-6 hours to get back)
~5 racks go “wonky” (40-80 machines see 50% packet loss)
~8 network maintenances (4 might cause ~30-minute random connectivity
losses)
~12 router reloads (takes out DNS and external vips for a couple minutes)
~3 router failures (have to immediately pull traffic for an hour)
~dozens of minor 30-second blips for dns
~1000 individual machine failures
~thousands of hard drive failures

... slow disks, bad memory, misconfigured machines, flaky machines, etc.
Google cluster

• 1000s máquinas, poucas configurações
• Sistema de arquivos (GFS) + Cluster scheduling system
• Geralmente 100s a 1000s de jobs ativos
   o alguns com 1 task, outros com 1000s
Redundância e failover

• Deployment: N+2
   o com crescimento de N, overhead por redundância diminui
      (%)
   o separação de dados de usuários e/ou aplicação
• Utilize balanceamento de carga como mecanismo de
  failover
   o desvia tráfego para outro cluster automaticamente
• Evita downtime de manutenção desviando tráfego
Balanceamento de carga multi-layer
Map reduce

• MapReduce
  o Lê um monte de dados
  o Mapeia: extrai somente a parte dos dados que são
    interessante para determinado processo
  o Shuffle e Sort
  o Reduzir: agrega, resume, filtra ou transforma
  o Escreve os resultados
• Reliability faz parte do processo de design,
  desenvolvimento e deployment de um serviço.
• Assim como não existe queijo demais em pizza, não existe
  redundância demais em serviços. Quanto mais 9s, melhor!

  E ainda assim, nós somente quase sempre
        respondemos suas perguntas...
Perguntas?


Não se acanhe!
Muito provavelmente sua pergunta será respondida :-)




Fernanda G Weiden <nanda@google.com>

Mais conteúdo relacionado

Mais procurados

Monitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixMonitoramento Opensource com Zabbix
Monitoramento Opensource com Zabbix
Renato Batista
 
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
Zabbix BR
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbix
Rafael Gomes
 
Aula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMPAula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMP
Verdanatech Soluções em TI
 
Planejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo CamposPlanejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo Campos
Joao Galdino Mello de Souza
 
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro SalesAula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Verdanatech Soluções em TI
 
Workshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCSWorkshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCS
Linux Solutions
 
Monitorando ativos com Zabbix
Monitorando ativos com ZabbixMonitorando ativos com Zabbix
Monitorando ativos com Zabbix
Zabbix BR
 
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Werneck Costa
 

Mais procurados (9)

Monitoramento Opensource com Zabbix
Monitoramento Opensource com ZabbixMonitoramento Opensource com Zabbix
Monitoramento Opensource com Zabbix
 
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
1º Meetup Zabbix Meetup do Recife: Danilo Barros - Zabbix dicas e truques par...
 
Monitoramento de ativos com zabbix
Monitoramento de ativos com zabbixMonitoramento de ativos com zabbix
Monitoramento de ativos com zabbix
 
Aula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMPAula 009 de Gerenciamento de Redes - SNMP
Aula 009 de Gerenciamento de Redes - SNMP
 
Planejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo CamposPlanejamento (e recuperação) de Desastres por Rodrigo Campos
Planejamento (e recuperação) de Desastres por Rodrigo Campos
 
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro SalesAula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
Aula 008 - Gerenciamento e Desempenho de Redes: Halexsandro Sales
 
Workshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCSWorkshop de Monitoramento com Zabbix e OCS
Workshop de Monitoramento com Zabbix e OCS
 
Monitorando ativos com Zabbix
Monitorando ativos com ZabbixMonitorando ativos com Zabbix
Monitorando ativos com Zabbix
 
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
Apresentação Werneck - MeSeg RNP 2017 - Natal RN - Importância do monitoramen...
 

Destaque

Gfs slides
Gfs slidesGfs slides
Google File System
Google File SystemGoogle File System
Google File System
Aline Sonnewend Adriano
 
Fireworks
FireworksFireworks
Fireworks
Guto Xavier
 
Windows
WindowsWindows
Windows
Guto Xavier
 
Sistema de tarefas 1.0
Sistema de tarefas 1.0Sistema de tarefas 1.0
Sistema de tarefas 1.0
Guto Xavier
 
Revisitando Local Storage
Revisitando Local StorageRevisitando Local Storage
Revisitando Local Storage
Guto Xavier
 
Introdução internet
Introdução internetIntrodução internet
Introdução internet
Guto Xavier
 
Empreendedorismo - você já teve uma ideia
Empreendedorismo - você já teve uma ideiaEmpreendedorismo - você já teve uma ideia
Empreendedorismo - você já teve uma ideia
Guto Xavier
 
Windows
WindowsWindows
Windows
Guto Xavier
 
Introdução ao desenvolvimento com HTML 5
Introdução ao desenvolvimento com HTML 5Introdução ao desenvolvimento com HTML 5
Introdução ao desenvolvimento com HTML 5
Guto Xavier
 
livro-grandes-marcas-grandes-negocios
livro-grandes-marcas-grandes-negocioslivro-grandes-marcas-grandes-negocios
livro-grandes-marcas-grandes-negocios
Guto Xavier
 
HTML - Imagens
HTML - ImagensHTML - Imagens
HTML - Imagens
Guto Xavier
 
Windows 2
Windows 2Windows 2
Windows 2
Guto Xavier
 
Primeira aula
Primeira aulaPrimeira aula
Primeira aula
Guto Xavier
 
Briefing
BriefingBriefing
Briefing
Guto Xavier
 
Imagens digitais
Imagens digitaisImagens digitais
Imagens digitais
Guto Xavier
 
Html
HtmlHtml
exercicios_de_criatividade
exercicios_de_criatividadeexercicios_de_criatividade
exercicios_de_criatividade
Guto Xavier
 
Internet aula 2
Internet aula 2Internet aula 2
Internet aula 2
Guto Xavier
 
DOS - Comandos
DOS - ComandosDOS - Comandos
DOS - Comandos
Guto Xavier
 

Destaque (20)

Gfs slides
Gfs slidesGfs slides
Gfs slides
 
Google File System
Google File SystemGoogle File System
Google File System
 
Fireworks
FireworksFireworks
Fireworks
 
Windows
WindowsWindows
Windows
 
Sistema de tarefas 1.0
Sistema de tarefas 1.0Sistema de tarefas 1.0
Sistema de tarefas 1.0
 
Revisitando Local Storage
Revisitando Local StorageRevisitando Local Storage
Revisitando Local Storage
 
Introdução internet
Introdução internetIntrodução internet
Introdução internet
 
Empreendedorismo - você já teve uma ideia
Empreendedorismo - você já teve uma ideiaEmpreendedorismo - você já teve uma ideia
Empreendedorismo - você já teve uma ideia
 
Windows
WindowsWindows
Windows
 
Introdução ao desenvolvimento com HTML 5
Introdução ao desenvolvimento com HTML 5Introdução ao desenvolvimento com HTML 5
Introdução ao desenvolvimento com HTML 5
 
livro-grandes-marcas-grandes-negocios
livro-grandes-marcas-grandes-negocioslivro-grandes-marcas-grandes-negocios
livro-grandes-marcas-grandes-negocios
 
HTML - Imagens
HTML - ImagensHTML - Imagens
HTML - Imagens
 
Windows 2
Windows 2Windows 2
Windows 2
 
Primeira aula
Primeira aulaPrimeira aula
Primeira aula
 
Briefing
BriefingBriefing
Briefing
 
Imagens digitais
Imagens digitaisImagens digitais
Imagens digitais
 
Html
HtmlHtml
Html
 
exercicios_de_criatividade
exercicios_de_criatividadeexercicios_de_criatividade
exercicios_de_criatividade
 
Internet aula 2
Internet aula 2Internet aula 2
Internet aula 2
 
DOS - Comandos
DOS - ComandosDOS - Comandos
DOS - Comandos
 

Semelhante a Estratégias de escablabilidade para serviços online

2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
Marcus Vinicius Miguel Pedro
 
Planejamento de Capacidade Técnicas e Ferramentas
Planejamento de Capacidade Técnicas e FerramentasPlanejamento de Capacidade Técnicas e Ferramentas
Planejamento de Capacidade Técnicas e Ferramentas
luanrjesus
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
iMasters
 
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (..."Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
WeOp - The Operations Summit
 
Planejamento de Capacidade - Técnicas e Ferramentas
Planejamento de Capacidade - Técnicas e FerramentasPlanejamento de Capacidade - Técnicas e Ferramentas
Planejamento de Capacidade - Técnicas e Ferramentas
Rodrigo Campos
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
Marcus Vinicius Miguel Pedro
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
luanrjesus
 
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
TI Safe
 
BIG DATA na UFSM
BIG DATA na UFSMBIG DATA na UFSM
BIG DATA na UFSM
Luciano Vargas
 
MySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI TecnologiaMySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL Brasil
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
Intel Software Brasil
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
Luciano Palma
 
Informatica Basica.pptx
Informatica Basica.pptxInformatica Basica.pptx
Informatica Basica.pptx
KarinaLuizaAzevedoAl
 
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
Bruno Camara
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Intel Software Brasil
 
Informatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociaisInformatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociais
RICARDO81499
 
MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor
MySQL Brasil
 
Apresentação HyperCloud GT8
Apresentação HyperCloud GT8Apresentação HyperCloud GT8
Apresentação HyperCloud GT8
HyperCloud UFS
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriques
marleigrolli
 
Apresentação GT - Digital Preservation
Apresentação GT - Digital PreservationApresentação GT - Digital Preservation
Apresentação GT - Digital Preservation
Roberto Beraldo Chaiben
 

Semelhante a Estratégias de escablabilidade para serviços online (20)

2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases2019 - Natura MeetUp - Journey to Cloud and Relational Databases
2019 - Natura MeetUp - Journey to Cloud and Relational Databases
 
Planejamento de Capacidade Técnicas e Ferramentas
Planejamento de Capacidade Técnicas e FerramentasPlanejamento de Capacidade Técnicas e Ferramentas
Planejamento de Capacidade Técnicas e Ferramentas
 
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
Datawarehouse - Obtenha insights consistentes para o seu negócio: conheça o n...
 
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (..."Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
"Software Defined CDN: Arquitetura, componentes e desafios" - Marcus Grando (...
 
Planejamento de Capacidade - Técnicas e Ferramentas
Planejamento de Capacidade - Técnicas e FerramentasPlanejamento de Capacidade - Técnicas e Ferramentas
Planejamento de Capacidade - Técnicas e Ferramentas
 
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career2019 - GUOB MeetUp - Journey to Cloud and DBA Career
2019 - GUOB MeetUp - Journey to Cloud and DBA Career
 
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas DistribuídosPlanejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
Planejamento e Gerenciamento de Capacidade para Sistemas Distribuídos
 
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
[CLASS 2014] Palestra Técnica - Marcelo Branquinho e Jan Seidl
 
BIG DATA na UFSM
BIG DATA na UFSMBIG DATA na UFSM
BIG DATA na UFSM
 
MySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI TecnologiaMySQL em 10min - Alexandre Almeida HTI Tecnologia
MySQL em 10min - Alexandre Almeida HTI Tecnologia
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
FISL14: Como domar uma fera de 1 TFlop que cabe na palma da sua mão!
 
Informatica Basica.pptx
Informatica Basica.pptxInformatica Basica.pptx
Informatica Basica.pptx
 
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
As Falácias e os Desenganos no Desenvolvimento de Software (TechDays 2005)
 
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
Palestra: Computação Paralela na SECOMP 2013 (UNIFEI)
 
Informatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociaisInformatica Básica Aplicada no Contexto das Desigualdades sociais
Informatica Básica Aplicada no Contexto das Desigualdades sociais
 
MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor MySQL Profiling com Enterprise Monitor
MySQL Profiling com Enterprise Monitor
 
Apresentação HyperCloud GT8
Apresentação HyperCloud GT8Apresentação HyperCloud GT8
Apresentação HyperCloud GT8
 
SNMP - Rafael Rodriques
SNMP - Rafael RodriquesSNMP - Rafael Rodriques
SNMP - Rafael Rodriques
 
Apresentação GT - Digital Preservation
Apresentação GT - Digital PreservationApresentação GT - Digital Preservation
Apresentação GT - Digital Preservation
 

Mais de Guto Xavier

Criatividade devpira
Criatividade   devpiraCriatividade   devpira
Criatividade devpira
Guto Xavier
 
Web design responsivo - Criando um site adaptável
Web design responsivo - Criando um site adaptávelWeb design responsivo - Criando um site adaptável
Web design responsivo - Criando um site adaptável
Guto Xavier
 
Técnicas de Apresentação em Público
Técnicas de Apresentação em PúblicoTécnicas de Apresentação em Público
Técnicas de Apresentação em Público
Guto Xavier
 
Pitch de vendas
Pitch de vendasPitch de vendas
Pitch de vendas
Guto Xavier
 
Sistema tst
Sistema tstSistema tst
Sistema tst
Guto Xavier
 
Banco de Dados - Trabalho de Tauan Silva
Banco de Dados - Trabalho de Tauan SilvaBanco de Dados - Trabalho de Tauan Silva
Banco de Dados - Trabalho de Tauan Silva
Guto Xavier
 
Arquitetura de informação
Arquitetura de informaçãoArquitetura de informação
Arquitetura de informação
Guto Xavier
 
Internet aula 3 social media
Internet aula 3   social mediaInternet aula 3   social media
Internet aula 3 social media
Guto Xavier
 
HTML - Tabelas
HTML - TabelasHTML - Tabelas
HTML - Tabelas
Guto Xavier
 
WEB - Guia_do_Ilust
WEB - Guia_do_IlustWEB - Guia_do_Ilust
WEB - Guia_do_Ilust
Guto Xavier
 
O uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
O uso da cor no ambiente de trabalho_Uma ergonomia da PercepcaoO uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
O uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
Guto Xavier
 
HTML - Listas
HTML - ListasHTML - Listas
HTML - Listas
Guto Xavier
 
HTML - Cores Fontes Parágrafos
HTML - Cores Fontes ParágrafosHTML - Cores Fontes Parágrafos
HTML - Cores Fontes Parágrafos
Guto Xavier
 

Mais de Guto Xavier (13)

Criatividade devpira
Criatividade   devpiraCriatividade   devpira
Criatividade devpira
 
Web design responsivo - Criando um site adaptável
Web design responsivo - Criando um site adaptávelWeb design responsivo - Criando um site adaptável
Web design responsivo - Criando um site adaptável
 
Técnicas de Apresentação em Público
Técnicas de Apresentação em PúblicoTécnicas de Apresentação em Público
Técnicas de Apresentação em Público
 
Pitch de vendas
Pitch de vendasPitch de vendas
Pitch de vendas
 
Sistema tst
Sistema tstSistema tst
Sistema tst
 
Banco de Dados - Trabalho de Tauan Silva
Banco de Dados - Trabalho de Tauan SilvaBanco de Dados - Trabalho de Tauan Silva
Banco de Dados - Trabalho de Tauan Silva
 
Arquitetura de informação
Arquitetura de informaçãoArquitetura de informação
Arquitetura de informação
 
Internet aula 3 social media
Internet aula 3   social mediaInternet aula 3   social media
Internet aula 3 social media
 
HTML - Tabelas
HTML - TabelasHTML - Tabelas
HTML - Tabelas
 
WEB - Guia_do_Ilust
WEB - Guia_do_IlustWEB - Guia_do_Ilust
WEB - Guia_do_Ilust
 
O uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
O uso da cor no ambiente de trabalho_Uma ergonomia da PercepcaoO uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
O uso da cor no ambiente de trabalho_Uma ergonomia da Percepcao
 
HTML - Listas
HTML - ListasHTML - Listas
HTML - Listas
 
HTML - Cores Fontes Parágrafos
HTML - Cores Fontes ParágrafosHTML - Cores Fontes Parágrafos
HTML - Cores Fontes Parágrafos
 

Último

O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
Pastor Robson Colaço
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
LILIANPRESTESSCUDELE
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
AurelianoFerreirades2
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
Mary Alvarenga
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
lveiga112
 
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdfUFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
Manuais Formação
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
HisrelBlog
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
TomasSousa7
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
AntnioManuelAgdoma
 
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
MessiasMarianoG
 
D20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua PortuguesaD20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua Portuguesa
eaiprofpolly
 
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
Eró Cunha
 
Leis de Mendel - as ervilhas e a maneira simples de entender.ppt
Leis de Mendel - as ervilhas e a maneira simples de entender.pptLeis de Mendel - as ervilhas e a maneira simples de entender.ppt
Leis de Mendel - as ervilhas e a maneira simples de entender.ppt
PatriciaZanoli
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
fernandacosta37763
 
Reino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptxReino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptx
CarinaSantos916505
 
05-os-pre-socraticos sociologia-28-slides.pptx
05-os-pre-socraticos sociologia-28-slides.pptx05-os-pre-socraticos sociologia-28-slides.pptx
05-os-pre-socraticos sociologia-28-slides.pptx
ValdineyRodriguesBez1
 
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptxAula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
edivirgesribeiro1
 
Potenciação e Radiciação de Números Racionais
Potenciação e Radiciação de Números RacionaisPotenciação e Radiciação de Números Racionais
Potenciação e Radiciação de Números Racionais
wagnermorais28
 
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdfCRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
soaresdesouzaamanda8
 

Último (20)

O que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdfO que é um Ménage a Trois Contemporâneo .pdf
O que é um Ménage a Trois Contemporâneo .pdf
 
Aula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptxAula 2 - Revisando o significado de fração - Parte 2.pptx
Aula 2 - Revisando o significado de fração - Parte 2.pptx
 
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdfA QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
A QUESTÃO ANTROPOLÓGICA: O QUE SOMOS OU QUEM SOMOS.pdf
 
Atividade letra da música - Espalhe Amor, Anavitória.
Atividade letra da música - Espalhe  Amor, Anavitória.Atividade letra da música - Espalhe  Amor, Anavitória.
Atividade letra da música - Espalhe Amor, Anavitória.
 
Testes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdfTestes + soluções_Mensagens12 )11111.pdf
Testes + soluções_Mensagens12 )11111.pdf
 
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdfUFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
UFCD_10145_Enquadramento do setor farmacêutico_indice.pdf
 
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIASA SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
A SOCIOLOGIA E O TRABALHO: ANÁLISES E VIVÊNCIAS
 
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptxSlides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
Slides Lição 11, Central Gospel, Os Mortos Em CRISTO, 2Tr24.pptx
 
Pintura Romana .pptx
Pintura Romana                     .pptxPintura Romana                     .pptx
Pintura Romana .pptx
 
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
347018542-PAULINA-CHIZIANE-Balada-de-Amor-ao-Vento-pdf.pdf
 
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
759-fortaleza-resultado-definitivo-prova-objetiva-2024-05-28.pdf
 
D20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua PortuguesaD20 - Descritores SAEB de Língua Portuguesa
D20 - Descritores SAEB de Língua Portuguesa
 
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...REGULAMENTO  DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
REGULAMENTO DO CONCURSO DESENHOS AFRO/2024 - 14ª edição - CEIRI /UREI (ficha...
 
Leis de Mendel - as ervilhas e a maneira simples de entender.ppt
Leis de Mendel - as ervilhas e a maneira simples de entender.pptLeis de Mendel - as ervilhas e a maneira simples de entender.ppt
Leis de Mendel - as ervilhas e a maneira simples de entender.ppt
 
Atividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º anoAtividade de reforço de matemática 2º ano
Atividade de reforço de matemática 2º ano
 
Reino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptxReino-Vegetal plantas e demais conceitos .pptx
Reino-Vegetal plantas e demais conceitos .pptx
 
05-os-pre-socraticos sociologia-28-slides.pptx
05-os-pre-socraticos sociologia-28-slides.pptx05-os-pre-socraticos sociologia-28-slides.pptx
05-os-pre-socraticos sociologia-28-slides.pptx
 
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptxAula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
Aula história , caracteristicas e esteriótipos em relação a DANÇA DE SALAO.pptx
 
Potenciação e Radiciação de Números Racionais
Potenciação e Radiciação de Números RacionaisPotenciação e Radiciação de Números Racionais
Potenciação e Radiciação de Números Racionais
 
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdfCRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
CRONOGRAMA - PSC 2° ETAPA 2024.pptx (1).pdf
 

Estratégias de escablabilidade para serviços online

  • 1. Porque o Google (quase) sempre responde as minhas perguntas? Fernanda G Weiden Site Reliability Engineer Cluster Management
  • 2. Missão "to organize the world's information and make it universally accessible and useful"
  • 3. O que o Google faz? e muito mais...
  • 4. O que está por trás disso tudo?
  • 5.
  • 6. Sysadmin na indústria... • Black-box software o pouca instrumentação, se existente • Dimensionamento de hardware o baseado nas necessidades do software o impulsionado por fornecedores • Monitoramento o Reação a falhas e imprevistos
  • 8. Site Reliability Engineering • "hope is not a strategy" o se você pensa que pode quebrar, provavelmente vai o se você pensa que não vai quebrar, definitivamente vai o de uma maneira que você não pensou o espetacular e "bizarramente"
  • 9. Reliability by Wikipedia "Ability of a person or system to perform and maintain its functions in routine circumstances, as well as hostile or unexpected circumstances."
  • 10. Site Reliability Engineering • 50% sysadmins, 50% engenheiros de software • Acesso completo ao código fonte o participação em revisão de design • PRR • Instalação o dimensionamento “job” - CPU, RAM, disk, network • Capacity Planning o crescimento orgânico, mudanças de infraestrutura, lançamento de funcionalidades • Monitores/alertas • Gerenciamento de clusters • Lançamento de software • Engenharia de software
  • 11. Site Reliability Engineering • Código fonte é tudo o código controlado o builds e rollouts automatizados • Sistema de revisão em par o estritos critérios de aceitação o guias de estilo, testes de pre-submit o subject ownership/expertise • Processo flexível: time, experts • Engineering driven (not management) o Critérios técnicos prevalecem
  • 12. Números que todos engenheir@s de computação deveria saber... L1 cache reference 0.5 ns Branch mispredict 5 ns L2 cache reference 7 ns Mutex lock/unlock 100 ns Main memory reference 100 ns Compress 1K bytes with Zippy 2,500 ns Send 2K bytes over 1 Gbps network 20,000 ns Read 1 MB sequentially from memory 250,000 ns Round trip within same datacenter 500,000 ns Disk seek 10,000,000 ns Read 1 MB sequentially from network 10,000,000 ns Read 1 MB sequentially from disk 30,000,000 ns Send packet CA->Netherlands->CA 150,000,000 ns
  • 13. Filosofia de hardware no Google • Eficiência em consumo de energia • Datacenters com alta densidade de uso • Software deve sobreviver outages planejados ou não • Replique serviços inteiros, e não componentes de hardware
  • 14. Um ano na vida de um cluster... ~0.5 overheating (power down most machines in <5 mins, ~1-2 days to recover) ~1 PDU failure (~500-1000 machines suddenly disappear, ~6 hours to come back) ~1 rack-move (plenty of warning, ~500-1000 machines powered down, ~6 hours) ~1 network rewiring (rolling ~5% of machines down over 2-day span) ~20 rack failures (40-80 machines instantly disappear, 1-6 hours to get back) ~5 racks go “wonky” (40-80 machines see 50% packet loss) ~8 network maintenances (4 might cause ~30-minute random connectivity losses) ~12 router reloads (takes out DNS and external vips for a couple minutes) ~3 router failures (have to immediately pull traffic for an hour) ~dozens of minor 30-second blips for dns ~1000 individual machine failures ~thousands of hard drive failures ... slow disks, bad memory, misconfigured machines, flaky machines, etc.
  • 15. Google cluster • 1000s máquinas, poucas configurações • Sistema de arquivos (GFS) + Cluster scheduling system • Geralmente 100s a 1000s de jobs ativos o alguns com 1 task, outros com 1000s
  • 16. Redundância e failover • Deployment: N+2 o com crescimento de N, overhead por redundância diminui (%) o separação de dados de usuários e/ou aplicação • Utilize balanceamento de carga como mecanismo de failover o desvia tráfego para outro cluster automaticamente • Evita downtime de manutenção desviando tráfego
  • 17. Balanceamento de carga multi-layer
  • 18. Map reduce • MapReduce o Lê um monte de dados o Mapeia: extrai somente a parte dos dados que são interessante para determinado processo o Shuffle e Sort o Reduzir: agrega, resume, filtra ou transforma o Escreve os resultados
  • 19. • Reliability faz parte do processo de design, desenvolvimento e deployment de um serviço. • Assim como não existe queijo demais em pizza, não existe redundância demais em serviços. Quanto mais 9s, melhor! E ainda assim, nós somente quase sempre respondemos suas perguntas...
  • 20. Perguntas? Não se acanhe! Muito provavelmente sua pergunta será respondida :-) Fernanda G Weiden <nanda@google.com>