SlideShare uma empresa Scribd logo
1 de 10
Visual Studio Summit 2013
Cleber Dantas
Dicas de otimização e performance de
aplicações Web com ASP.NET
Portal Minha Vida/Dieta e Saúde
Visual Studio Summit 2013
Steve Souders – “80% dos problemas de performance de aplicações Web estão no Front-end”
Front-end
Visual Studio Summit 2013
1ª dica: Separe componentes em
subdomínios distintos
• Motivos
– Carregamento de componentes em paralelo
– Fácil gerenciamento de canal de entrega do conteúdo
– Cookie-free domains (http://www.cleberdantas.com/2011/11/cuidado-com-os-
cookies-cookie-free-domains)
Visual Studio Summit 2013
2ª dica: Carregamento
tardio/assíncrono de js
• Motivos
– Renderização bloqueada pelo browser
– Se não vai usar imediatamente o script para que baixa-lo? ora pois...
• Ferramentas
– Labjs (http://labjs.com/)
– ControlJS (http://stevesouders.com/controljs/)
Visual Studio Summit 2013
3ª dica: Keep-alive sempre ligado
• Motivos
– Para cada requisição HTTP uma conexão TCP precisa ser estabelecida
– Three-way handshake a todo momento é desnecessário
– Anatomia de uma requisição HTTP
(http://www.cleberdantas.com/2011/12/anatomia-de-uma-requisicao-http/)
Visual Studio Summit 2013
3ª dica: Keep-alive sempre ligado
Visão das requisições HTTP
Visão das conexões TCP
Visual Studio Summit 2013
4ª dica: Abuse dos cabeçalhos de
expiração de conteúdo
• Motivos
– Cacher é bom  truste me
– Visualizações futuras bem mais rápidas (afinal não é preciso buscar componentes
ainda “frescos”)
– Na dúvida cachear tudo (e ter um bom esquema pra forçar a atualização caso
necessário)
• Expires ou Cache-Control?
– Os dois  (só pra garantir), mas entenda a diferença.
Visual Studio Summit 2013
5ª dica: Use uma CDN (Ou construa
a sua... E me avise)
• 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)
• http://www.cleberdantas.com/2011/11/content-delivery-network-cdn-
voce-ainda-vai-usar-uma/
Visual Studio Summit 2013
5ª dica: Use uma CDN (Ou construa
a sua... E me avise)
http://ajax.aspnetcdn.com/ajax/jquery/jquery-
1.5.1.min.js
Visual Studio Summit 2013
Obrigado. Perguntas?
http://www.cleberdantas.com
http://tecnologia.minhavida.com.br
http://br.linkedin.com/company/minha-vida

Mais conteúdo relacionado

Mais procurados

Webquest tecnologia assistiva
Webquest   tecnologia assistivaWebquest   tecnologia assistiva
Webquest tecnologia assistivaEwerton Marinho
 
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPI
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPIMVP ShowCast 2014 - Desenvolvendo APIs com WebAPI
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPIAndre Baltieri
 
Visual Studio App Center - Continuous Everything
Visual Studio App Center - Continuous Everything Visual Studio App Center - Continuous Everything
Visual Studio App Center - Continuous Everything Letticia Nicoli
 
Primeiros passos no Vue.js
Primeiros passos no Vue.jsPrimeiros passos no Vue.js
Primeiros passos no Vue.jsJoel Rodrigues
 
Pwa (progressive web app)
Pwa (progressive web app)Pwa (progressive web app)
Pwa (progressive web app)GeorgiaAntunes
 
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...tdc-globalcode
 
Ad Specifications Manual do Homem Moderno
Ad Specifications Manual do Homem ModernoAd Specifications Manual do Homem Moderno
Ad Specifications Manual do Homem ModernoManual do Homem Moderno
 

Mais procurados (11)

Webquest tecnologia assistiva
Webquest   tecnologia assistivaWebquest   tecnologia assistiva
Webquest tecnologia assistiva
 
Como me dei bem com Java
Como me dei bem com JavaComo me dei bem com Java
Como me dei bem com Java
 
Protractor + visual review 2
Protractor + visual review 2Protractor + visual review 2
Protractor + visual review 2
 
W2py pyconpe
W2py pyconpeW2py pyconpe
W2py pyconpe
 
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPI
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPIMVP ShowCast 2014 - Desenvolvendo APIs com WebAPI
MVP ShowCast 2014 - Desenvolvendo APIs com WebAPI
 
Visual Studio App Center - Continuous Everything
Visual Studio App Center - Continuous Everything Visual Studio App Center - Continuous Everything
Visual Studio App Center - Continuous Everything
 
Primeiros passos no Vue.js
Primeiros passos no Vue.jsPrimeiros passos no Vue.js
Primeiros passos no Vue.js
 
Pwa (progressive web app)
Pwa (progressive web app)Pwa (progressive web app)
Pwa (progressive web app)
 
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...
TDC2017 | São Paulo - Trilha Acessibilidade How we figured out we had a SRE t...
 
Responsividade e html5
Responsividade e html5Responsividade e html5
Responsividade e html5
 
Ad Specifications Manual do Homem Moderno
Ad Specifications Manual do Homem ModernoAd Specifications Manual do Homem Moderno
Ad Specifications Manual do Homem Moderno
 

Semelhante a Otimizando aplicações Web com ASP.NET

Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaAlexandre Tarifa
 
Otimização de Websites para Ganho de Performance & Resiliência
Otimização de Websites para Ganho de Performance & ResiliênciaOtimização de Websites para Ganho de Performance & Resiliência
Otimização de Websites para Ganho de Performance & ResiliênciaSucuri
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...Cleber Dantas
 
Ebook - Processo de Otimização de Sites WordPress
Ebook - Processo de Otimização de Sites WordPressEbook - Processo de Otimização de Sites WordPress
Ebook - Processo de Otimização de Sites WordPressDaniel Paz
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = ProdutividadeAdriano Bertucci
 
Melhorando a performance do seu banco de dados, não acessando ele!
Melhorando a performance do seu banco de dados, não acessando ele!Melhorando a performance do seu banco de dados, não acessando ele!
Melhorando a performance do seu banco de dados, não acessando ele!Alexandre Tarifa
 
Infografico performance SCDE CCEE
Infografico performance SCDE CCEEInfografico performance SCDE CCEE
Infografico performance SCDE CCEEJulio Ferracini
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...tdc-globalcode
 
Team Foundation Server 2012 Express
Team Foundation Server 2012 ExpressTeam Foundation Server 2012 Express
Team Foundation Server 2012 ExpressiMasters
 
Otimizacao Front-End para WordPress - OlhoSEO 2013
Otimizacao Front-End para WordPress - OlhoSEO 2013Otimizacao Front-End para WordPress - OlhoSEO 2013
Otimizacao Front-End para WordPress - OlhoSEO 2013Guga Alves
 
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para CloudPaulo Miguel Almeida
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15MySQL Brasil
 
Sap Comunity Day Brasil 2009 - SAP NWDI
Sap Comunity Day Brasil 2009 - SAP NWDISap Comunity Day Brasil 2009 - SAP NWDI
Sap Comunity Day Brasil 2009 - SAP NWDImarlosimon
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaCleber Dantas
 

Semelhante a Otimizando aplicações Web com ASP.NET (20)

Técnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escalaTécnicas e recursos para desenvolvimento Web em cenários de grande escala
Técnicas e recursos para desenvolvimento Web em cenários de grande escala
 
Otimização de Websites para Ganho de Performance & Resiliência
Otimização de Websites para Ganho de Performance & ResiliênciaOtimização de Websites para Ganho de Performance & Resiliência
Otimização de Websites para Ganho de Performance & Resiliência
 
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
MSTechday - Técnicas e recursos para desenvolvimento web em cenários de grand...
 
Ebook - Processo de Otimização de Sites WordPress
Ebook - Processo de Otimização de Sites WordPressEbook - Processo de Otimização de Sites WordPress
Ebook - Processo de Otimização de Sites WordPress
 
TDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - FloripaTDC 2016 Trilha Testes - Floripa
TDC 2016 Trilha Testes - Floripa
 
Microsoft ALM = Produtividade
Microsoft ALM = ProdutividadeMicrosoft ALM = Produtividade
Microsoft ALM = Produtividade
 
Melhorando a performance do seu banco de dados, não acessando ele!
Melhorando a performance do seu banco de dados, não acessando ele!Melhorando a performance do seu banco de dados, não acessando ele!
Melhorando a performance do seu banco de dados, não acessando ele!
 
Infografico performance SCDE CCEE
Infografico performance SCDE CCEEInfografico performance SCDE CCEE
Infografico performance SCDE CCEE
 
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
TDC2017 | Florianopolis - Trilha DevOps How we figured out we had a SRE team ...
 
Team Foundation Server 2012 Express
Team Foundation Server 2012 ExpressTeam Foundation Server 2012 Express
Team Foundation Server 2012 Express
 
7 masters - TFS Express 2012
7 masters - TFS Express 20127 masters - TFS Express 2012
7 masters - TFS Express 2012
 
Otimizacao Front-End para WordPress - OlhoSEO 2013
Otimizacao Front-End para WordPress - OlhoSEO 2013Otimizacao Front-End para WordPress - OlhoSEO 2013
Otimizacao Front-End para WordPress - OlhoSEO 2013
 
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud
[Palestra] - Arquitetura de Sistemas de Alta Disponibilidade para Cloud
 
Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15Novidades do Universo MySQL julho-15
Novidades do Universo MySQL julho-15
 
Magento: Mitos vs Vantagens
Magento: Mitos vs VantagensMagento: Mitos vs Vantagens
Magento: Mitos vs Vantagens
 
Test day 2012
Test day 2012Test day 2012
Test day 2012
 
Sap Comunity Day Brasil 2009 - SAP NWDI
Sap Comunity Day Brasil 2009 - SAP NWDISap Comunity Day Brasil 2009 - SAP NWDI
Sap Comunity Day Brasil 2009 - SAP NWDI
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
 
Meetup vue.js
Meetup vue.jsMeetup vue.js
Meetup vue.js
 

Mais de Cleber Dantas

[Minha Vida TechDay] Novo Dieta e Saúde
[Minha Vida TechDay] Novo Dieta e Saúde[Minha Vida TechDay] Novo Dieta e Saúde
[Minha Vida TechDay] Novo Dieta e SaúdeCleber Dantas
 
Performance em aplicações Web
Performance em aplicações WebPerformance em aplicações Web
Performance em aplicações WebCleber Dantas
 
[MinhaVida TechDay] NEO4J
[MinhaVida TechDay] NEO4J[MinhaVida TechDay] NEO4J
[MinhaVida TechDay] NEO4JCleber Dantas
 
[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQLCleber Dantas
 
IIS para desenvolvedores
IIS para desenvolvedoresIIS para desenvolvedores
IIS para desenvolvedoresCleber Dantas
 
LABjs e JQuery Templates
LABjs e JQuery TemplatesLABjs e JQuery Templates
LABjs e JQuery TemplatesCleber Dantas
 
Novidades asp.net mvc 4
Novidades asp.net mvc 4Novidades asp.net mvc 4
Novidades asp.net mvc 4Cleber Dantas
 
ASP.NET MVC - O que tem de melhor
ASP.NET MVC - O que tem de melhorASP.NET MVC - O que tem de melhor
ASP.NET MVC - O que tem de melhorCleber Dantas
 
Como trabalhar com ajax, json e cache
Como trabalhar com ajax, json e cacheComo trabalhar com ajax, json e cache
Como trabalhar com ajax, json e cacheCleber Dantas
 

Mais de Cleber Dantas (10)

[Minha Vida TechDay] Novo Dieta e Saúde
[Minha Vida TechDay] Novo Dieta e Saúde[Minha Vida TechDay] Novo Dieta e Saúde
[Minha Vida TechDay] Novo Dieta e Saúde
 
Performance em aplicações Web
Performance em aplicações WebPerformance em aplicações Web
Performance em aplicações Web
 
[MinhaVida TechDay] NEO4J
[MinhaVida TechDay] NEO4J[MinhaVida TechDay] NEO4J
[MinhaVida TechDay] NEO4J
 
[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL[MinhaVida TechDay] NoSQL
[MinhaVida TechDay] NoSQL
 
IIS para desenvolvedores
IIS para desenvolvedoresIIS para desenvolvedores
IIS para desenvolvedores
 
LABjs e JQuery Templates
LABjs e JQuery TemplatesLABjs e JQuery Templates
LABjs e JQuery Templates
 
Novidades asp.net mvc 4
Novidades asp.net mvc 4Novidades asp.net mvc 4
Novidades asp.net mvc 4
 
Inversion ofcontrol
Inversion ofcontrolInversion ofcontrol
Inversion ofcontrol
 
ASP.NET MVC - O que tem de melhor
ASP.NET MVC - O que tem de melhorASP.NET MVC - O que tem de melhor
ASP.NET MVC - O que tem de melhor
 
Como trabalhar com ajax, json e cache
Como trabalhar com ajax, json e cacheComo trabalhar com ajax, json e cache
Como trabalhar com ajax, json e cache
 

Otimizando aplicações Web com ASP.NET

  • 1. Visual Studio Summit 2013 Cleber Dantas Dicas de otimização e performance de aplicações Web com ASP.NET Portal Minha Vida/Dieta e Saúde
  • 2. Visual Studio Summit 2013 Steve Souders – “80% dos problemas de performance de aplicações Web estão no Front-end” Front-end
  • 3. Visual Studio Summit 2013 1ª dica: Separe componentes em subdomínios distintos • Motivos – Carregamento de componentes em paralelo – Fácil gerenciamento de canal de entrega do conteúdo – Cookie-free domains (http://www.cleberdantas.com/2011/11/cuidado-com-os- cookies-cookie-free-domains)
  • 4. Visual Studio Summit 2013 2ª dica: Carregamento tardio/assíncrono de js • Motivos – Renderização bloqueada pelo browser – Se não vai usar imediatamente o script para que baixa-lo? ora pois... • Ferramentas – Labjs (http://labjs.com/) – ControlJS (http://stevesouders.com/controljs/)
  • 5. Visual Studio Summit 2013 3ª dica: Keep-alive sempre ligado • Motivos – Para cada requisição HTTP uma conexão TCP precisa ser estabelecida – Three-way handshake a todo momento é desnecessário – Anatomia de uma requisição HTTP (http://www.cleberdantas.com/2011/12/anatomia-de-uma-requisicao-http/)
  • 6. Visual Studio Summit 2013 3ª dica: Keep-alive sempre ligado Visão das requisições HTTP Visão das conexões TCP
  • 7. Visual Studio Summit 2013 4ª dica: Abuse dos cabeçalhos de expiração de conteúdo • Motivos – Cacher é bom  truste me – Visualizações futuras bem mais rápidas (afinal não é preciso buscar componentes ainda “frescos”) – Na dúvida cachear tudo (e ter um bom esquema pra forçar a atualização caso necessário) • Expires ou Cache-Control? – Os dois  (só pra garantir), mas entenda a diferença.
  • 8. Visual Studio Summit 2013 5ª dica: Use uma CDN (Ou construa a sua... E me avise) • 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) • http://www.cleberdantas.com/2011/11/content-delivery-network-cdn- voce-ainda-vai-usar-uma/
  • 9. Visual Studio Summit 2013 5ª dica: Use uma CDN (Ou construa a sua... E me avise) http://ajax.aspnetcdn.com/ajax/jquery/jquery- 1.5.1.min.js
  • 10. Visual Studio Summit 2013 Obrigado. Perguntas? http://www.cleberdantas.com http://tecnologia.minhavida.com.br http://br.linkedin.com/company/minha-vida