Re: [Cascavel-pm] Prévia de novo módulo
Nilson Santos Figueiredo Junior
acid06 em gmail.com
Quarta Fevereiro 1 16:21:54 PST 2006
On 2/1/06, Luis Campos de Carvalho <monsieur_champs em yahoo.com.br> wrote:
> Os resultados são muito bons. :-) Isto deveria subir para o CPAN. a.s.a.p.!
Luis, infelizmente eu achei mais um problema.
O módulo ainda é incontestavelmente mais rápido que o Class::DBI sob
qualquer circustância, porém, eu descobri que por ter um mecanismo de
caching razoavelmente bom e utilizar queries simples, que fazem com
que o cache do MySQL trabalhe de forma ótima, o módulo fica "viciado"
quando utilizado sob benchmarks sintéticos.
Eu terei que fazer algumas mudanças e provavelmente a performance em
benchmarks vai cair mais um pouco. Porém, em uso real a performance
vai melhorar.
Eu descobri isso porque resolvi fazer um teste extremamente bobo:
rodar o benchmark apenas uma vez. Isso demonstrou que pra primeira
query o meu módulo "perdia" pro RDBOFast.
Resolvi depois fazer um benchmark mais "real" em que ao invés de uma
query fixa, uma query aleatória era disparada e constatei que pra
situações reais o módulo fica tecnicamente empatado com o RDBO. Apesar
de na maioria das vezes que rodei o benchmark, o meu módulo ter sido
mais rápido, foi marginalmente mais rápido (coisa de 10%). Algumas
vezes chegou a ser 25% mais rápido e chegou também em alguns casos a
ser 25% mais lento.
De qualquer forma ainda existe a vantagem de ele ter uma interface de
uso extremamente mais simples que a do RDBO (i.e. igual a do
Class::DBI) mas eu sabia que eu não podia ser uma pessoa tão brilhante
assim pra ter feito algo tão bom assim. ;-)
Mas ainda acho que seja algo promissor. E para o caso e aplicações em
que sejam comuns muitas queries repetidas ele ainda é bem mais rápido
que os outros.
-Nilson Santos F. Jr.
Mais detalhes sobre a lista de discussão Cascavel-pm