CDN para Conteúdo Dinâmico: Estudo de caso do site Feriados.com.br

Neste artigo gostaríamos de mostrar um case interessante, onde o uso de uma CDN para conteúdo dinâmico permitiu que o site de um de nossos clientes absorvesse um grande e inesperado pico de acessos, evitando que o mesmo saísse do ar e queimasse sua reputação junto aos seus visitantes.

O site Feriados.com.br, apesar de ter apenas 4 meses de vida, tem crescido rapidamente, com uma proposta de concentrar informações sobre todos os Feriados das milhares cidades brasileiras.

Neste crescimento acelerado, esta semana eles foram “premiados” com a primeira posição no Google para a Keyword “Feriado Consciência Negra“, ou seja, poucos dias antes deste feriado ocorrer, o que resultou num grande e inesperado aumento de tráfego.

O sistema do site, que faz a busca em tempo real num banco de dados com mais de 5.500 cidades, não estava preparado para um aumento tão repentino na quantidade de acessos à pagina. Os servidores rapidamente se sobrecarregaram e iriam cair em questão de mais uma ou duas horas, então uma decisão rápida precisava ser tomada.

Refazer parte dos códigos do site, para torná-lo mais eficiente, armazenando em algum tipo de cache os resultados do banco de dados, seria algo trabalhoso e impraticável em tão pouco tempo.

Foi então que os desenvolvedores, que já usavam a CDN da GoCache em outros sites, se lembraram que poderiam usar nossa CDN também para conteúdos dinâmicos, e decidiram prontamente por tomar este caminho.

Usar a CDN foi algo bem simples: bastou incluir o domínio Feriados.com.br no painel da GoCache e, em seguida, habilitar o Smartcache, criando a regra abaixo para fazer cache dos conteúdos dinâmicos do site (.php).

smartrules

Veja nos gráficos abaixo que os servidores estavam praticamente em 100% de uso e os “créditos de processamento”, que são uma unidade de medida na hospedagem da Amazon, estavam quase acabando. Logo em seguida, minutos após habilitarem a CDN, a carga no servidor caiu vertiginosamente, e os créditos de processamento voltam a se acumular no sistema, para serem usados em qualquer outra ocasião de grande processamento.

 uso de CPU
Uso da CPU do servidor, que começou a crescer muito logo pela manhã, caindo após a configuração da CDN
creditos de cpu
Créditos de Processamento quase chegaram a zero, mas voltaram a subir logo que a CDN foi configurada.

Pra quem usa servidores do tipo T2 na Amazon (AWS), ficará fácil entender os gráficos acima, onde a sobrecarga (acima de 20%) estava consumindo os créditos do servidor, que chegou a 7,5% e sairia do ar assim que chegasse a 0%.

Outros gráficos interessantes são os que o Painel da GoCache apresentaram algumas horas após configurada a CDN. Vejam que a CDN absorveu mais de 80% das requisições do site e quase 75% da banda que era consumida, eliminando desta forma a grande sobrecarga que estava ocorrendo nos servidores.

eficiencia de cache

Desta forma, o site voltou a funcionar normalmente e agora é capaz de absorver qualquer futuro pico de acessos, além de também economizar nos custos com uso banda/tráfego e processamento.

Por fim, agradecemos ao pessoal do Feriados.com.br por terem compartilhado conosco, com ricos detalhes, este interessante caso, que poderá ajudar outros sites que venham a enfrentar problemas semelhantes.