Aplicações Web de Alta Performance

478 views
343 views

Published on

Palestra sobre a Studio Sol Comunicação Digital apresentada na Faculdade de Pará de Minas em outubro de 2012, citando a história da empresa e dando algumas dicas de como lidamos com aplicações com grande volume de acessos, como Letras.mus.br, Cifra Club e Palco MP3

Published in: Technology
1 Comment
4 Likes
Statistics
Notes
No Downloads
Views
Total views
478
On SlideShare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
1
Likes
4
Embeds 0
No embeds

No notes for slide

Aplicações Web de Alta Performance

  1. 1. Aplicações web de alta performance Pedro Chaves Studio Sol Comunicação Digital
  2. 2. Tópicos1. A Studio Sol Comunicação Digital2. Os sites/apps3. A matemática dos usuários4. A equipe de desenvolvimento5. Tecnologias e estrutura dos sites6. Problemas, soluções e otimizações7. Mais otimizações!8. Dicas finais
  3. 3. 1996 2000 Gabriel Fernandes Studio Sol é criada cria o Cifra Club com Samuel Vignoli 2003 2008 2009 Letras.mus.br e A primeira vídeo-aula Studio Sol se muda Palco MP3 são é lançada para um andar na lançados Savassi 2010 2012 Cifra Club TV ganha Empresa tem 3 andaresmais instrutores e um e aproximadamente 60 estúdio próprio funcionários
  4. 4. Os sites/apps
  5. 5. 65 mil 580 mil artistas músicas 390 mil 52 milhõesvisitas diárias pageviews Mais de 2 milhões downloads de App para Android / iOS Dados de setembro de 2012
  6. 6. 297 mil 1.130 vídeo- cifras de violão aulas por 9 instrutores90 milhões 16 milhões pageviews visitas 580 mil 214 milhões visualizações no visitas diárias YouTube Dados de setembro de 2012
  7. 7. 144 mil 2 milhões artistas letras de música360 milhões 82 milhões pageviews visitas 2,7 milhões 27 milhões visitas diárias visitantes únicos Dados de setembro de 2012
  8. 8. Equipe de desenvolvimento
  9. 9. Tecnologias utilizadas JavaScript
  10. 10. Tecnologias utilizadas
  11. 11. Não importa a linguagem, mas sim a estrutura que você monta para sua aplicação web.
  12. 12. Tecnologias utilizadas Memcached
  13. 13. ...e qualquer outra coisa que nos ajude.
  14. 14. Estrutura● 14 servidores em São Paulo● 1 servidor com MySQL dedicado● 1 slave MySQL em cada servidor● 3 servidores servindo aplicações● 3 servidores servindo músicas para o Palco MP3● 2 servidores para cache
  15. 15. Problemas, soluçoes e otimizações
  16. 16. Problema #1O acesso ao disco é lento, e acesso ao MySQL mais lento ainda.
  17. 17. Solução #1 Não buscar dados sempre no MySQL!
  18. 18. Otimização #1 Memcached Arquivos em disco
  19. 19. Otimização #1 Não grave os dados no mesmo servidor em que eles são lidos!
  20. 20. Problema #2 Quanto mais scripts simultâneos no servidor, mais lento ele fica
  21. 21. Solução #2Evitar que o usuário chegueaté o servidor de aplicação!
  22. 22. Otimização #2 HTTP Last- HTTP Max- modified age
  23. 23. Problema #3 Código mal escrito prejudica o servidor.
  24. 24. Solução #3 Saiba o que é lento nalinguagem que está usando e evite usar!
  25. 25. Otimização #3 Cada milissegundo salvo representa algumas requisições extras no fim do dia ;)
  26. 26. Em uma aplicação web, seu foco deve ser apenas um: O Usuário!
  27. 27. CSS Sprites Ao invés de 15 imagens, por que não só uma?
  28. 28. Compressão de arquivos● Minificar JS e CSSRedução de 60% no tamanho do arquivo● gzipRedução de 70% no tamanho da resposta● Ganhar SEGUNDOS no carregamento da páginaNão tem preço!
  29. 29. Otimizações no client-side● Processamentos pesados no servidor● Arquivos estáticos em servidor sem cookies● Carregamento de JavaScript assíncrono● Comprimir HTML● Busque JavaScripts de CDNs conhecidos● Quanto menos arquivos melhor! Lets Make the Web Faster!
  30. 30. Seja curioso, leia o código alheio, experimente coisasnovas e mantenha-se atualizado. Fale inglês!
  31. 31. Obrigado! pedro.chaves@studiosol.com.br @pedrochaves http://github.com/pedrochaves

×