TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala

491 views

Published on

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
491
On SlideShare
0
From Embeds
0
Number of Embeds
11
Actions
Shares
0
Downloads
8
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala

  1. 1. Técnicas e recursos paradesenvolvimento Web em cenários de grande escala Globalcode – Open4education
  2. 2. Cleber Dantas Atua há 8 anos no mercado de TI Especialista em desenvolvimento Web MCAD e MCTS Entusiasta Agile Instrutor– Treinando.Net (http://www.treinando.net) @cleberdantas http://www.cleberdantas.com Globalcode – Open4education
  3. 3. Minha Vida Globalcode – Open4education
  4. 4. Dieta e Saúde Globalcode – Open4education
  5. 5. Agenda da Saúde Globalcode – Open4education
  6. 6. 90 funcionários – 120 Atéo fim do ano Globalcode – Open4education
  7. 7. 25 da área de tecnologia Globalcode – Open4education
  8. 8. 8 milhões de usuários/mês Globalcode – Open4education
  9. 9. 50 milhões pageviews/mês Globalcode – Open4education
  10. 10. 15 TB distribuídos/mês(js, css, html, images, vídeos) Globalcode – Open4education
  11. 11. Introdução Cenário de aplicações Web (Internet) comparados com sistemas internos exigem técnicas ou práticas que normalmente são ignorados ou desnecessárias O ambiente de distribuição é praticamente infinito (navegadores, tipos de conexão, dispositivos, localização, etc) Globalcode – Open4education
  12. 12. Agenda Front-end Delivery Real time Globalcode – Open4education
  13. 13. Front-End Steve Sounders – “80% dos problemas de performance de aplicações Web estão no Front-end” YSlow – Extensão do Firefox para análise de performance nas páginas – baseado nas 14 regras do livro High Performance Web Sites (existem outros templates) Globalcode – Open4education
  14. 14. Front-end - Demosprite, paralelismo de downloadse minify js Globalcode – Open4education
  15. 15. Ajax Otimização do trafego de dados entre servidor e cliente (navegador) Trafegar a menor quantidade possível de dados nas requisições jQuery e JSON (JavaScript Object Notation) torna isso muito fácil jQuery Templates (templates de HTML pré carregados nas páginas) Globalcode – Open4education
  16. 16. Ajax - Demo jQuery, JSON e jQuery Templates Globalcode – Open4education
  17. 17. Cache A melhor solução de performance é fazer com que o seu código não seja executado o tempo todo! Tipos de Cache Cliente – Headers de expiração (Expires e Cache- Control) Servidor – OutputCache (ASP.NET) e Cache de Objetos (ASP.NET ou memCached) Globalcode – Open4education
  18. 18. Cache – DemoIIS, helper de atualização dearquivos estáticos Globalcode – Open4education
  19. 19. Delivery - CDN Content Delivery Network Rede de distribuição de conteúdo Infraestrutura para ENTREGA do conteúdo Própria Terceirizada (Akamai, Ananke, UOL, etc) Pública (Microsoft, Google, etc) Distribuição de bibliotecas públicas (exemplo jQuery) http://ajax.aspnetcdn.com/ajax/jquery/jquery-1.5.1.min.js Globalcode – Open4education
  20. 20. Delivery - CDN Globalcode – Open4education
  21. 21. Delivery - NGINX Proxy Reverso Utilizamos para entrega de imagens (muito performático) http://nginx.org/ Globalcode – Open4education
  22. 22. Real Time - Web Sockets Recurso do HTML 5 para aplicações Web Real Time Conexão direta e bidirecional com o servidor web Atualização instantânea no cliente (navegadores) Globalcode – Open4education
  23. 23. Exemplos: Timeline Twitter Globalcode – Open4education
  24. 24. Exemplos: Tempo RealGlobo.com Globalcode – Open4education
  25. 25. Real Time – Long Pooling- DemoAplicações real time – chat Globalcode – Open4education
  26. 26. Links http://tecnologia.minhavida.com.br http://br.linkedin.com/company/minha-vida http://www.cleberdantas.com http://www.treinando.net @cleberdantas vi sua palestra no #tdc2012 e quero um desconto em cursos da @treinandodotnet Globalcode – Open4education
  27. 27. Obrigado. Perguntas? Globalcode – Open4education

×