• Save
Arquitetura de Email de Larga Escala
Upcoming SlideShare
Loading in...5
×
 

Arquitetura de Email de Larga Escala

on

  • 1,389 views

 

Statistics

Views

Total Views
1,389
Slideshare-icon Views on SlideShare
1,382
Embed Views
7

Actions

Likes
3
Downloads
0
Comments
0

3 Embeds 7

http://www.linkedin.com 3
https://twimg0-a.akamaihd.net 2
https://twitter.com 2

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Arquitetura de Email de Larga Escala Arquitetura de Email de Larga Escala Presentation Transcript

    • Arquitetura de Email de Larga Escala
    • Renato Lucindo @rlucindo /lucindo
    • Agenda• Arquiteturas de email convencionais• Solução para email de larga escala• Histórico e Detalhes• Problemas e Soluções• Lições Aprendidas
    • Arquitetura de Email Convencional HTTP Webmail IMAP/NFS POP/IMAP Mail Server & Internet Storage Maildir/Mbox SMTP/LMTP SMTP SMTP (Mail Delivery & Queue)
    • Arquitetura de Email Convencional (escalando) Webmail Webmail WebmailInternet Mail Server & Storage SMTP (Mail Delivery & Queue)
    • Arquitetura de Email Convencional (escalando) Webmail Webmail WebmailInternet Mail Server & Storage SMTP (Mail Delivery & Queue)
    • Arquitetura de Email Convencional (escalando) Webmail Diretório Webmail WebmailInternet Mail Server & Storage SMTP (Mail Delivery & Queue)
    • Arquitetura de Email Convencional (escalando) Webmail Diretório Webmail WebmailInternet Mail Server & Storage SMTP (Mail Delivery & Queue)
    • Arquitetura de Email Convencional (escalando) Webmail Diretório Webmail Webmail Internet Mail Server & Storage SMTP (Mail Delivery & Queue)Ponto único de falha
    • Arquitetura de Email Convencional (escalando) Webmail Diretório Webmail Webmail Internet Mail Server & Storage SMTP (Mail Delivery & Queue)Ponto único de falha
    • 2004
    • Requisitos do Projeto• Performance• Alta Disponibilidade• Escalabilidade• Baixo Custo
    • Requisitos do Projeto Performance Cache Filas
    • Requisitos do Projeto Alta Disponibilidade 
    • Requisitos do Projeto Alta Disponibilidade 
    • Requisitos do Projeto Alta Disponibilidade   Réplicas
    • Requisitos do Projeto Alta DisponibilidadeComo manter consistência?
    • Requisitos do Projeto Escalabilidade  
    • Requisitos do Projeto Escalabilidade  
    • Requisitos do Projeto Escalabilidade    Particionamento
    • Requisitos do Projeto EscalabilidadeComo encontrar os dados?
    • Requisitos do Projeto• Performance – Caches, Filas, Código• Alta Disponibilidade – Replicas: Consistência• Escalabilidade – Particionamento: Índice• Baixo Custo
    • Alta Disponibilidade Escalabilidade
    • Time Inicial• Desenvolvimento – 2 desenvolvedores – 2(3) administradores de sistemas• Operação dedicada – Principal fonte de requisitos
    • Visão geral da Arquitetura HTTP Webmail IMAP POP/IMAP Mail Server &Internet Storage LMTP SMTP SMTP (Mail Delivery & Queue)
    • Visão geral da Arquitetura HTTP Webmail Mail Index IMAP Server POP/IMAP Front-end MailInternet Protocolo Interno Server Mail Data LMTP Server SMTP SMTP (Mail Delivery & Queue)
    • Ferramentas• C++• CORBA• ACE + TAO• Shell Script, Perl, Java, Python, Ruby• Erlang
    • Detalhes da Arquitetura HTTP Webmail Mail Index IMAP Server POP/IMAP Front-end MailInternet Protocolo Interno Server Mail Data LMTP Server SMTP SMTP (Mail Delivery & Queue)
    • Detalhes da Arquitetura HTTP Webmail Mail Index IMAP Server POP/IMAP Front-end MailInternet Protocolo Interno Server Mail Data LMTP Server SMTP SMTP (Mail Delivery & Queue)
    • Detalhes da ArquiteturaFront-end Index A B Data A B
    • Detalhes da ArquiteturaFront-end Index  A  B Data  A  B
    • Detalhes da Arquitetura• Como se encontra qualquer dado? – Servidores com heartbeat com estado (multicast) – Índice interno volátil get index Internal Index Index Front-end Data
    • Detalhes da Arquitetura A Internal B IndexFront-end A B
    • Detalhes da Arquitetura A Internal B Index multicast discoveryFront-end A B
    • Detalhes da Arquitetura get index A Internal B Index multicast discoveryFront-end A B
    • Detalhes da Arquitetura A Internal B IndexFront-end A B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end A B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end A B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end A B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end  A  B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end  A  B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end  A  B
    • Detalhes da Arquitetura  A Internal  B IndexFront-end  A  B
    • O que acontece em caso de falha? (crescimento e manutenção do sistema)
    • Detalhes da Arquitetura A  B
    • Detalhes da ArquiteturaAB
    • Detalhes da ArquiteturaAB     
    • Detalhes da ArquiteturaAB     
    • Detalhes da ArquiteturaA    B
    • Mudanças Durante o Projeto• Início com 2 cópias de cada mensagem• Mudança para 3 cópias• Volta para 2 cópias• Mudança do Sistema de Arquivos• Mudança de todo o hardware algumas vezes
    • Lições AprendidasFerramentas Administrativas (logs, contadores, monitoração)
    • Lições AprendidasTestes de Resiliência Front- Back A end Back C Front- Back B end
    • Lições Aprendidas Testes de Resiliência Front- Back A end Back C Front- Back B end$ kill –KILL …
    • Lições Aprendidas Testes de Resiliência Front- Back A end Back C Front- Back B end$ kill –STOP …
    • Lições Aprendidas• Nem sempre o problema é no seu código ou arquitetura – ReiserFS – Kernel panic com mmap –…
    • Lições Aprendidas
    • Muito mais• ILM• AntiSpam• Contatos• Webmail• …
    • Obrigado! Dúvidas?