Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Entregando conteúdo em  ambientes extremos        na JVM                    ROd
ROdDesenvolvedor especialistaem arquiteturas de altaperformance relacionadas apublicação, busca e entregade conteúdo para ...
ObjetivoAumentar a disponibilidadeda entrega de conteúdo do          Portal
ObjetivoDiminuir acesso aosserviços de backend
ObjetivoSimplificar a infraestrutura de entrega de conteúdo
Objetivo   Suportar múltiplosformatos do conteúdo na      mesma URL
noticias.uol.com.br
noticias.uol.com.br
noticias.uol.com.br
MARRAKESH
PremissasEstado imutávelDetecção de User AgentCacheMelhores práticas do HTTPProxy da engine de template
Detecção de User AgentWURFL  – Web patchFast detection  – Bot  – Desktop
CacheCache replicado em todas as máquinas do poolSeparação entre conteúdo e máquina de estadoCache de conteúdo “gzipado”Bo...
HttpHandlerContent-Encoding: gzipETag e Last-Modified  – 11% da audiência ainda utiliza HTTP/1.0Cache-ControlConnection: C...
Ambiente original
Novo ambiente
PRÉ PRODUÇÃO
TestesTeste no hardware finalFerramentas:  – HAProxy  – ab, request-simulator, siege  – visualvm e visualgc
JVM-Xms == -Xmx-XX:+AggressiveOpts-XX:+UseAdaptiveSizePolicy-XX:+UseParNewGC-XX:ParallelGCThreads
JVM-verbose:gc-XX:+PrintGCDetails-XX:+PrintGCDateStamps-Dnetworkaddress.cache.ttl-Dnetworkaddress.cache.negative.ttl
EM PRODUÇÃO
MigraçãoBeta com noticias.uol.com.brMigração de todos os dominios de conteúdoem 2 meses  – 42 áreas principais  – Mais de ...
Apache DocRootApache envia redirect  – /busca → /busca/Problema: Algumas funções JavaScript seapoiavam nesta “feature”Erro...
Negando conexõesApós morte do Chico Anysio requisições nãoestabeleciamPico de 160k reqs/minuto por servidorPico de 3200 re...
Negando conexõesTentativas:  – Aumento de threads do Apache  – Pré alocação de threads do Apache  – Testes com nginxSoluçã...
Long GC Pauses– Requisições tinham tempo alto de respostasem nenhum evento especial– Análise de gc.log– Full GCs levando 1...
Long GC Pauses– Após o solução do problema anterior asalterações do Apache não foram desfeitas– Threads pré alocadas fizer...
500 Server Internal Error– Diversas requisições retornando 500– No mesmo momento outras retornando“200 OK” para o mesmo re...
500 Server Internal Error Suspeita: Connection Pool do Jetty Análise: Sniffer entre Apache e Jetty Problema:  – queryStrin...
Números15k ~ 150k reqs/min (230k no pico → 3833 req/s)98% cache hits125 Mbps (225 Mbps pico)55% de respostas “Not Modified...
Próximos passosSubstituir Jetty → NettyArmazenar uma semana de conteúdo emmemóriaIntegração com Metrics frameworkMigração ...
Obrigado =)http://slideshare.net/rzdrigo/entregando-conteudo-em-               ambientes-extremos-na-jvm
Entregando conteúdo em  ambientes extremos        na JVM                    ROd
Upcoming SlideShare
Loading in …5
×

Entregando conteúdo em ambientes extremos na JVM

1,092 views

Published on

Palestra apresentada no QCon SP em 05/08/2012.

  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download Full EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download Full doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download PDF EBOOK here { https://soo.gd/irt2 } ......................................................................................................................... Download EPUB Ebook here { https://soo.gd/irt2 } ......................................................................................................................... Download doc Ebook here { https://soo.gd/irt2 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book THIS can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer THIS is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story THIS Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money THIS the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths THIS Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THAT BOOKS INTO AVAILABLE FORMAT (2019 Update) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { http://shorturl.at/mzUV6 } ......................................................................................................................... Download Full EPUB Ebook here { http://shorturl.at/mzUV6 } ......................................................................................................................... Download Full doc Ebook here { http://shorturl.at/mzUV6 } ......................................................................................................................... Download PDF EBOOK here { http://shorturl.at/mzUV6 } ......................................................................................................................... Download EPUB Ebook here { http://shorturl.at/mzUV6 } ......................................................................................................................... Download doc Ebook here { http://shorturl.at/mzUV6 } ......................................................................................................................... ......................................................................................................................... ................................................................................................................................... eBook is an electronic version of a traditional print book that can be read by using a personal computer or by using an eBook reader. (An eBook reader can be a software application for use on a computer such as Microsoft's free Reader application, or a book-sized computer that is used solely as a reading device such as Nuvomedia's Rocket eBook.) Users can purchase an eBook on diskette or CD, but the most popular method of getting an eBook is to purchase a downloadable file of the eBook (or other reading material) from a Web site (such as Barnes and Noble) to be read from the user's computer or reading device. Generally, an eBook can be downloaded in five minutes or less ......................................................................................................................... .............. Browse by Genre Available eBooks .............................................................................................................................. Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, ......................................................................................................................... ......................................................................................................................... .....BEST SELLER FOR EBOOK RECOMMEND............................................................. ......................................................................................................................... Blowout: Corrupted Democracy, Rogue State Russia, and the Richest, Most Destructive Industry on Earth,-- The Ride of a Lifetime: Lessons Learned from 15 Years as CEO of the Walt Disney Company,-- Call Sign Chaos: Learning to Lead,-- StrengthsFinder 2.0,-- Stillness Is the Key,-- She Said: Breaking the Sexual Harassment Story That Helped Ignite a Movement,-- Atomic Habits: An Easy & Proven Way to Build Good Habits & Break Bad Ones,-- Everything Is Figureoutable,-- What It Takes: Lessons in the Pursuit of Excellence,-- Rich Dad Poor Dad: What the Rich Teach Their Kids About Money That the Poor and Middle Class Do Not!,-- The Total Money Makeover: Classic Edition: A Proven Plan for Financial Fitness,-- Shut Up and Listen!: Hard Business Truths that Will Help You Succeed, ......................................................................................................................... .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Entregando conteúdo em ambientes extremos na JVM

  1. 1. Entregando conteúdo em ambientes extremos na JVM ROd
  2. 2. ROdDesenvolvedor especialistaem arquiteturas de altaperformance relacionadas apublicação, busca e entregade conteúdo para o portalUOL. Mestre pelo IME-USPem 07/2012 =) @rzdrigo
  3. 3. ObjetivoAumentar a disponibilidadeda entrega de conteúdo do Portal
  4. 4. ObjetivoDiminuir acesso aosserviços de backend
  5. 5. ObjetivoSimplificar a infraestrutura de entrega de conteúdo
  6. 6. Objetivo Suportar múltiplosformatos do conteúdo na mesma URL
  7. 7. noticias.uol.com.br
  8. 8. noticias.uol.com.br
  9. 9. noticias.uol.com.br
  10. 10. MARRAKESH
  11. 11. PremissasEstado imutávelDetecção de User AgentCacheMelhores práticas do HTTPProxy da engine de template
  12. 12. Detecção de User AgentWURFL – Web patchFast detection – Bot – Desktop
  13. 13. CacheCache replicado em todas as máquinas do poolSeparação entre conteúdo e máquina de estadoCache de conteúdo “gzipado”Bots não adicionam conteúdo no cache
  14. 14. HttpHandlerContent-Encoding: gzipETag e Last-Modified – 11% da audiência ainda utiliza HTTP/1.0Cache-ControlConnection: Close
  15. 15. Ambiente original
  16. 16. Novo ambiente
  17. 17. PRÉ PRODUÇÃO
  18. 18. TestesTeste no hardware finalFerramentas: – HAProxy – ab, request-simulator, siege – visualvm e visualgc
  19. 19. JVM-Xms == -Xmx-XX:+AggressiveOpts-XX:+UseAdaptiveSizePolicy-XX:+UseParNewGC-XX:ParallelGCThreads
  20. 20. JVM-verbose:gc-XX:+PrintGCDetails-XX:+PrintGCDateStamps-Dnetworkaddress.cache.ttl-Dnetworkaddress.cache.negative.ttl
  21. 21. EM PRODUÇÃO
  22. 22. MigraçãoBeta com noticias.uol.com.brMigração de todos os dominios de conteúdoem 2 meses – 42 áreas principais – Mais de 80 dominios
  23. 23. Apache DocRootApache envia redirect – /busca → /busca/Problema: Algumas funções JavaScript seapoiavam nesta “feature”Erro: /buscamontecarlo.htm → 404 Not Found
  24. 24. Negando conexõesApós morte do Chico Anysio requisições nãoestabeleciamPico de 160k reqs/minuto por servidorPico de 3200 reqs/segundo por servidor
  25. 25. Negando conexõesTentativas: – Aumento de threads do Apache – Pré alocação de threads do Apache – Testes com nginxSolução: ajustes nos valores do sysctlnet.ipv4.ip_local_port_range e net.ipv4.tcp_tw_reuse
  26. 26. Long GC Pauses– Requisições tinham tempo alto de respostasem nenhum evento especial– Análise de gc.log– Full GCs levando 12 ~ 15 segundos, mesmoapós ajustes em pré produção
  27. 27. Long GC Pauses– Após o solução do problema anterior asalterações do Apache não foram desfeitas– Threads pré alocadas fizeram o servidorcomeçar a consumir swap– Monitoração da swap desativada
  28. 28. 500 Server Internal Error– Diversas requisições retornando 500– No mesmo momento outras retornando“200 OK” para o mesmo resource– Nenhuma mensagem de erro no log daaplicação
  29. 29. 500 Server Internal Error Suspeita: Connection Pool do Jetty Análise: Sniffer entre Apache e Jetty Problema: – queryString no Apache 2.0.x não suportaUTF-8 – Somente IE realizava esta transformação
  30. 30. Números15k ~ 150k reqs/min (230k no pico → 3833 req/s)98% cache hits125 Mbps (225 Mbps pico)55% de respostas “Not Modified” (304)Redução de consultas ao Sistema de busca – 500 → 250 queries/sec (-50%)
  31. 31. Próximos passosSubstituir Jetty → NettyArmazenar uma semana de conteúdo emmemóriaIntegração com Metrics frameworkMigração de outros serviços para a plataforma
  32. 32. Obrigado =)http://slideshare.net/rzdrigo/entregando-conteudo-em- ambientes-extremos-na-jvm
  33. 33. Entregando conteúdo em ambientes extremos na JVM ROd

×