[firebase-br] RES: Lentidão

Maciel Soncini Bueno maciel em 2msolutions.com.br
Seg Maio 26 19:01:50 -03 2008


Saudações Eduardo,

Primeiramente gostaria de agradecer o seu retorno e dizer que em hipótese
alguma fiquei ofendido com seu e-mail.

Sobre contratar um desenvolvedor e um DBA ficará para uma próxima, vez que
já temos desenvolvedores/DBA´s na equipe.

O sistema em questão roda em dezenas de clientes e, somente em um está
apresentando os problemas mencionados por isso o questionamento para a
lista.

Como a lista é aberta para dúvidas de usuários leigos, intermediários,
avançados e, Firebird´s Mans que deve ser o seu caso, não me hesitei em
montar o e-mail e enviar para a lista.

Assim sendo, vou pesquisar sobre o que escreveu e depois divulgar os
resultados obtidos para a lista.

Tomo a liberdade de perguntar / comentar suas linhas:

"- suas transações estão extremamente longas (se é que está controlando
isto);"
- O que posso considerar como uma transação longa?
  Tenho transactions no sistema dentre elas, transactions que podem ficar
abertas por 05/10/15 minutos, por se tratar de um módulo de recepção de
pacientes (clínicas, hospitais, centros de diagnósticos);
"- Não está commitando os SELECTs (ou trabalha com CommitRetainnig com o
controle feito pelo DBExpress);"
Trabalho com o CommitRetainnig com o controle feito pelo DBExpress. Você
pode me sugerir um link ou documentação para que eu possa melhorar ou
entender melhor sobre isso?
"- Não configurou o horário do SWEEP do banco (deixou automático a cada
20 mil transações);"
Estava automático. Já desliguei o automático e coloquei para ser executado
diariamente as 22h00. Neste horário não tem ninguém utilizando o sistema.
Pergunto: Faz diferença executar o sweep antes ou depois do backup? O gbak
está com a cláusula -G.
"- Adotou o SuperServer numa máquina dual-core;"
Pois é... Já tinha lido sobre o assunto, mas como no servidor antigo estava
SuperServer, quando instalaram, fizeram igual. Já estou solicitando a troca
de Super Server para Classic Server.
Haverá muita vantagem se mudar para o Firebird 2.0?

"- entre outros..."
Fale mais sobre entre outros....

"Mas isto é um ponto interessante.... muitas pessoas tem problemas de
performance com o FireBird... pois acham que todos os bancos de dados
são iguais, ou pior, acham que trabalhar com DBF, paradox ou tabelas em
memória é igual a trabalhar com bancos relacionais..."

Eduardo, eu não disse isso. Já trabalhei com DBF, Paradox, Oracle, Sql
Server e companhia. Sou fã do Firebird e trabalho com o mesmo desde 2002.


"o Firebird, quando bem utilizado, tem uma performance impressionante (em
rede local é claro... ainda tem um protocolo muito pesado e tagarela
para ser utilizado diretamente via internet). Só que muitos fatores
colaboram para a frustração dos desenvolvedores/utilizadores. É um banco
pequeno, simples, leve, gratuito e fácil de administrar, e por esta
razão, muitos não dão a devida importância. Não faze teste de stress,
não monitoram índices e principalmente não procuram entender as regras
transacionais ou o sistema de Versionning e Garbage Collection."

Como nunca tive problemas, nunca me preocupei mesmo, mas acho que há tempo
de melhorar, não é memsmo?!

Se puder me indicar link´s, livros, etc..., que me esclareçam melhor sobre
esses assuntos, agradeço.

Até mais,

Atenciosamente,

Maciel Soncini Bueno
2M SOLUTIONS
11-4438-6891 / 8555-8507
maciel em 2msolutions.com.br
www.2msolutions.com.br


-----Mensagem original-----
De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
nome de Eduardo Jedliczka - TeamFB
Enviada em: segunda-feira, 26 de maio de 2008 14:30
Para: FireBase
Assunto: Re: [firebase-br] Lentidão

Para resolver seu problema, contrate um desenvolvedor e um DBA que saiba
trabalhar com o FIREBIRD.

Se isto parecer muito radical, recomendo que reveja a forma como o
aplicativo é escrito.... Posso estar enganado, mas os sintomas me levam
ao seguinte diagnóstico:

- suas transações estão extremamente longas (se é que está controlando
isto);
- Não está commitando os SELECTs (ou trabalha com CommitRetainnig com o
controle feito pelo DBExpress);
- Não configurou o horário do SWEEP do banco (deixou automático a cada
20 mil transações);
- Adotou o SuperServer numa máquina dual-core;
- entre outros...

Mas isto é um ponto interessante.... muitas pessoas tem problemas de
performance com o FireBird... pois acham que todos os bancos de dados
são iguais, ou pior, acham que trabalhar com DBF, paradox ou tabelas em
memória é igual a trabalhar com bancos relacionais...

o Firebird, quando bem utilizado, tem uma performance impressionante (em
rede local é claro... ainda tem um protocolo muito pesado e tagarela
para ser utilizado diretamente via internet). Só que muitos fatores
colaboram para a frustração dos desenvolvedores/utilizadores. É um banco
pequeno, simples, leve, gratuito e fácil de administrar, e por esta
razão, muitos não dão a devida importância. Não faze teste de stress,
não monitoram índices e principalmente não procuram entender as regras
transacionais ou o sistema de Versionning e Garbage Collection.

Espero que não se sinta ofendido, e procure conhecer melhor o produto
que pretende utilizar. Abraço!

Eduardo Jedliczka


Em Seg, 2008-05-26 às 13:15 -0300, Maciel Soncini Bueno escreveu:
> Cenário:
> 
> - Sistema desenvolvido em Delphi 7 com DBExpress.
> - Banco de Dados Firebird 1.5 Super Sever.
> - Sistema Operacional Linux Debian 2.6
> - Processador Xeon Dual Core 2.66 GHZ
> - Memória 2 GB RAM
> - HD 250 GB SATA
> - Placa de Rede 1 Gigabit com servidor ligado a porta de 1 gigabit no
> switch.
> 
> Situação:
> 
> - Sistema muito lento.
> - Retorno das querys muito lento.
> - Reinicia o servidor e melhora, mas no dia seguinte está ruim novamente.
> - Já reconstruí o banco e não melhorou.
> 
> O que posso fazer para melhorar?
> Qual versão do Fireibird instalar?
> Qual modalidade (Super Server ou Classic)?
> Qual Page Size definir?
> Se instalar Firebird 2.0 deve atualizar os client´s também?
> Devo fazer alguma atualização no DBExpress se migrar para versão 2.0?
> Deve mexer alguma coisa no setup da máquina (bios) para melhorar a
> performance?
> 
> Já vi vários tópicos na lista sobre este assunto, mas se puderem me ajudar
> agradeço.
> 
> Atenciosamente,
> 
> Maciel Soncini Bueno
> 2M SOLUTIONS
> 11-4438-6891 / 8555-8507
> maciel em 2msolutions.com.br
> www.2msolutions.com.br
> 
> 
> 
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa


______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use:
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista