Coelho Dizeres Computador
[X] Fechar

Já conhece a NewsLetter do CoelhoDePrograma? Clique aqui e assine!

Só demora 30 segundos para se cadastrar e você recebe nossas notícias por email!

Seu nome:

Seu email:

Nome do amigo:

Email do amigo:

Usando SQL_CACHE no MySQL
Enviar por email Compartilhe no Twitter

segunda-feira, 23 de setembro de 2013 - 11:27
Banco de dados - você está implantando isso errado!Fala, galera!

Na última matéria eu mostrei uma utilidade da cláusula SQL_CALC_FOUND_ROWS no MySQL e havia dito que faria um artigo mostrando como fazer cache no MySQL.

Cache, para quem não sabe, é o armazenamento de partes da informação, de modo a acelerar seu uso das próximas vezes em que for acessada, desde que essa informação não tenha sido modificada. Exemplo: Uma página de internet com o seu logo. Para acelerar a exibição, o navegador pode verificar se a figura foi modificada e, se não, busca-la do tal cache ao invés de buscar por ela no site.

Não vou me alongar demais sobre como isso é feito porque não tenho conhecimento técnico sobre como se faz, portanto, fato que faz a probabilidade de eu falar alguma besteira aumentar drasticamente. Ater-me-ei ao seu uso com o MySQL, onde, aliás, ele tem a mesma utilidade.

Vamos usar o mesmo exemplo dado na matéria anterior:

“s.elect datMateria, strTituloMateria, strTextoMateria from matérias where strTextoMateria like ‘%intervalado%’ order by datMateria desc limit 0, 20”

Esse comando buscará os campos datMateria, strTituloMateria, strTextoMateria dos vinte primeiros registros da tabela de matérias que tenham a expressão intervalado no campo strTextoMateria. Suponha que você deseje refazer essa pesquisa em um outro momento. Quando você a refaz, a busca pode ser programada para usar o cache, desde que os campos datMateria, strTituloMateria e strTextoMateria da tabela matérias não tenha sofrido nenhuma modificação. Como? No caso do MySQL, acrescentando a cláusula SQL_CACHE ao s.elect. O comando ficará assim:

“s.elect SQL_CACHE datMateria, strTituloMateria, strTextoMateria from matérias where strTextoMateria like ‘%intervalado%’ order by datMateria desc limit 0, 20”

A importância dessa otimização vai aumentando enormemente à medida em que os acessos ao seu site (e conseqüentemente ao seu banco de dados) crescem. E quem já teve a oportunidade de trabalhar desenvolvendo um site com muitos acessos sabe que o acesso ao banco de dados pode ser um dos maiores gargalos (pontos potenciais de atrasos na exibição do conteúdo).

Bom, o que eu tinha para trazer hoje era isso. That´s all, folks!

Um abraço, espero que tenham gostado e até a próxima!

Fonte: Coelho de Programa

Leia mais sobre: sql_cache, mysql, banco de dados

Assine a NewsLetter do CoelhoDePrograma e não perca mais nenhum artigo!

Gostou da matéria? Comente logo abaixo! mrgreen

Copyright - Marcelo Coelho