MongoDB @ Globo.com
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

MongoDB @ Globo.com

  • 6,464 views
Uploaded on

Estes são os slides da apresentação sobre o uso do MongoDB no projeto Cartola FC da Globo.com. Vc pode ver o vídeo dessa apresentação no link:......

Estes são os slides da apresentação sobre o uso do MongoDB no projeto Cartola FC da Globo.com. Vc pode ver o vídeo dessa apresentação no link: http://www.gonow.com.br/blog/2011/07/29/o-mongodb-aplicado-ao-cartolafc-da-globo-com/

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
6,464
On Slideshare
3,306
From Embeds
3,158
Number of Embeds
14

Actions

Shares
Downloads
60
Comments
0
Likes
2

Embeds 3,158

http://www.gonow.com.br 2,283
http://geekvigarista.com 363
http://www.techgig.com 341
http://www.10gen.com 150
http://www.mongodb.com 9
http://drupal1.10gen.cc 3
http://mostlydata.wordpress.com 2
http://apy.mongodb.org 1
http://webcache.googleusercontent.com 1
http://172.16.32.157 1
http://pluhspw.mongodb.org 1
http://paper.li 1
http://www.google.com.br 1
http://translate.googleusercontent.com 1

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. MONGODB @ GLOBO.COM Julho/2011
  • 2. FRANKLIN AMORIM email: franklin@corp.globo.com twitter: @cyberelfo
  • 3. • Provedorade serviços tecnológicos e plataformas web para as empresas Globo• Líder nos segmentos de notícias, esportes e entretenimento
  • 4. Números de Junho/2011:• Mais de 70 milhões de visitantes únicos (cookies distintos)• Mais de 550 milhões de visitas• Mais de 3 bilhões de pageviews, em quase 300.000 páginas distintas
  • 5. • Maior aplicação dinâmica da Globo.com• Maior Fantasy Game da internet brasileira• Mais de 2 milhões de usuários cadastrados• 15 milhões de visitas em junho• Quase 90 milhões de pageviews em junho• Quase 30k sessões simultâneas nos picos de acesso
  • 6. • Gráfico do datacenter
  • 7. O DESAFIODesenvolver uma aplicação de mural, com capacidade para atender ao volume deacesso do Cartola, com alta performance e disponibilidade.
  • 8. PREMISSAS• Velocidade• Robustez• Escalabilidade• Perda de mensagens não é critico• Indisponibilidade inicial é tolerável
  • 9. MYSQL XMONGODB
  • 10. MONGODB - VANTAGENS• Velocidade• Sem necessidade de um ORM• Acesso mais natural aos dados• Sem schema / sem migrations (com exceções)• Failover automático• Possibilidade de escalar escritas com sharding
  • 11. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 12. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 13. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 14. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 15. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 16. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 17. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 18. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 19. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 20. VISÃO SIMPLIFICADA Nginx/Tornado MongoDB
  • 21. TECNOLOGIAS• Ngnix - Webserver• Tornado - Application• Beanstalk - Fila• Memcached• AsyncMongo (ao invés do PyMongo)• MongoDB
  • 22. TESTES DE PERFORMANCE• 01 database server - MongoDB• 01 application server• 01 collection com 100 milhões de mensagens• Resultado: 300 requests/segundo• Com 02 application + Memcached: 1.000 reqs/sec
  • 23. //newsfeed.post - Final { data: "Tue Jun 15 2010 9:00:00 GMT-0400" mensagem: "Minha mensagem"//newsfeed.post - Original liga: {{ id: 1930 id : 1223, nome: "Liga 1930" post_origem_id: 1123, slug: "liga-1930" data: "200411300746400000", } mensagem: "Minha mensagem", comentarios:[ Liga: { { id: 1930, id: 251902, nome: "Liga 1930", data: "Tue Jun 16 2010 11:00:00 GMT-0400", slug: "liga-1930" mensagem: "Legal!", } time: {...} time: { }, id: 1005, { nome: "Time 1005", id: 251903, slug: "time-1005", data: "Tue Jun 16 2010 14:00:00 GMT-0400", flashvars: {...} mensagem: "Nem tanto..." } time: {...}} } ] }
  • 24. WORKING SET Trabalhar com um working setreduzido, minimizando o impacto das consultas ao banco
  • 25. ARQUITETURA Primário ArbitroSecundário
  • 26. ARQUITETURA Primário ArbitroSecundário Cartola
  • 27. ARQUITETURA Primário Primário ArbitroSecundário Secundário Cartola Replica Set 2
  • 28. RESULTADOS• Deploy feito em maio/2011• Banco funcionando 24/7• Nenhum incidente reportado desde a implantação•1 milhão de mensagens publicadas
  • 29. RESULTADO
  • 30. LIÇÕES APRENDIDAS• Embedding vs Referencing• Minimizar o tamanho dos documentos• Escolher corretamente os data types• Reduza o working set
  • 31. OUTROS PROJETOS
  • 32. RECEITAS.COM
  • 33. CATALOGO DE VÍDEOS
  • 34. PARTICIPAÇÕES
  • 35. PERGUNTAS?
  • 36. OBRIGADO! :) twitter: @cyberelfoemail: franklin@corp.globo.com