Fórum Ainda Stored Procedures: um bem ou um mal? #379253
10/06/2010
0
Após muitas lidas e muito estudo eu resolvi mudar todo o esquema de consulta e inserção de dados no banco firebir de um pequeno aplicativo que tenho de "help desk".
Usando o Delphi 7, firebird e a paleta de componentes interbase. Trabalhava com ibdatasets e ibquerys passando as strings pelo código. Daí resolvi mudar para SPs pois li que isso melhoraria a performance do sistema devido a melhora no trafego da rede.
Só que acabei tendo problemas pois o consumo de processador para cada processo gerado pelo servidor firebird aumentou de 0.8% por processo para 1.9% por processo. Isso tá matando o meu servidor que é Linux + Firebird.
Alguém pode me dá uma "luz" a respeito disso?Quando devo e quando não devo usar esse recurso?
Desde já agradeço a atenção de todos.
Daniel
Daniel Mourao
Curtir tópico
+ 0Posts
14/06/2010
Vitor Rubio
Se você usar stored procedures, terá menos tráfego de comandos sql pela rede, uma vez que os comandos com stored procedures são menores.
Se não usar as SPs terá vários "select .... from" trafegando pela rede.
Se criar SPs enxutas, que tratam poucos registros, recebem poucos parâmetros, não usam recursos de tratar string como consulta SQL (que teria que ser interpretada e executada no servidor) suas SP's não serão uma carga muito grande.
Ainda mais se as tabelas estiverem bem estruturadas e indexadas, e você tiver um bom controle de transações.
Que tipo de operação mais se faz na sua aplicação: pesquisas ou inserções? Talvez essa medida te dê uma luz de como você pode dividir as tarefas.
Agora não imagino porque 1,9% está derrubando o servidor. Ele não deveria aguentar bem mais que isso?
Considere também fazer a aplicação em três camadas (n-tier com datasnap). Assim você pode ligar o servidor de aplicação direto no servidor de bd por uma rede gigabit só entre os dois e ainda pode adicionar mais servidores de aplicação para fazer um load-balance.
Gostei + 0
17/06/2010
Carlos Mazzi
Gostei + 0
21/06/2010
Daniel Mourao
O meu servidor estava com problema. Eu mudei o banco para outro servidor e ele não gerou mais o erro. Daí eu refiz a configuração do servidor firebird no antigo e depois movi o banco de volta para ele e funcionou.
Obrigado pela ajuda.
Gostei + 0
21/06/2010
Daniel Mourao
Continuo com problema para fechar os meus posts.Marco a opção "Sim, está concluído" e clico no botão de gravar mas, a página gera um erro de "página não encontrada".
Já tentei fechar esse mesmo post e não consigo.
Obrigado.
Gostei + 0
30/06/2010
Carlos Mazzi
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)