tdc - técnicas e recursos para desenvolvimento web em cenários de grande escala

Post on 11-Jun-2015

356 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Globalcode – Open4education

Técnicas e recursos para desenvolvimento Web em cenários

de grande escala

Globalcode – Open4education

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

Minha Vida

Globalcode – Open4education

Dieta e Saúde

Globalcode – Open4education

Agenda da Saúde

Globalcode – Open4education

90 funcionários – 120 Até o fim do ano

Globalcode – Open4education

25 da área de tecnologia

Globalcode – Open4education

8 milhões de usuários/mês

Globalcode – Open4education

50 milhões pageviews/mês

Globalcode – Open4education

15 TB distribuídos/mês(js, css, html, images, vídeos)

Globalcode – Open4education

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

Agenda

Front-end

Delivery

Real time

Globalcode – Open4education

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

Front-end - Demo

sprite, paralelismo de downloads e minify js

Globalcode – Open4education

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

Ajax - Demo

jQuery, JSON e jQuery Templates

Globalcode – Open4education

Cache

A melhor solução de performance é fazer com que o seu código não seja executado o tempo todo!

Tipos de CacheCliente – Headers de expiração (Expires e Cache-Control)

Servidor – OutputCache (ASP.NET) e Cache de Objetos (ASP.NET ou memCached)

Globalcode – Open4education

Cache – Demo

IIS, helper de atualização de arquivos estáticos

Globalcode – Open4education

Delivery - CDN

Content Delivery NetworkRede de distribuição de conteúdo

Infraestrutura para ENTREGA do conteúdoPró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

Delivery - CDN

Globalcode – Open4education

Delivery - NGINX

Proxy Reverso

Utilizamos para entrega de imagens (muito performático)

http://nginx.org/

Globalcode – Open4education

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

Exemplos: Timeline Twitter

Globalcode – Open4education

Exemplos: Tempo Real Globo.com

Globalcode – Open4education

Real Time – Long Pooling - Demo

Aplicações real time – chat

Globalcode – Open4education

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

Obrigado. Perguntas?

top related