[firebase-br] IB 6 super server não usa memória eficientemente?

Paulo paulo em manfra.com.br
Seg Ago 18 13:19:00 -03 2008


Douglas Tosi escreveu em 18/08/2008 11:40:
> On Mon, Aug 18, 2008 at 11:27 AM, Paulo <paulo em manfra.com.br> wrote:
>   
>> Tenho um servidor IB 6 aqui rodando numa máquina com 2GB de RAM com mais
>> de 40 clientes. O que me estranha é que o processo do IB não ocupa mais
>> do que 80MB de RAM! Acredito que assim o desempenho não esteja sendo
>> otimizado. Isto é normal do IB? Neste caso, não seria melhor utilizar a
>> arquitetura Classic Server? Meu arquivo gdb tem 300MB.
>>     
>
> A quantidade de memória usada pelo servidor depende de como ele está
> configurado e de alguns parâmetros definidos no banco de dados.
> Por exemplo, o tamanho do cache de páginas.
>
> Antes de sair otimizando, convém perguntar: você está tendo problemas
> de performance? Quais os sintomas?
>
> Aproveito para recomendar uma atualização. O IB6 é uma das piores
> versões que a borland fez. Acho que só perde para o 5.5. Se você não
> tem recursos para atualizar para uma versão do Firebird atual,
> considere no mínimo atualizar para o Firebird 1.0x que é muito mais
> estável que o IB6 e é o mais parecido em termos de características.
>
> hth,
>   
Olá, Douglas.

O parâmetro DATABASE_CACHE_PAGES está em 3500. Já experimentei aumentar 
este valor, mas houve um pequeno aumento no uso da memória apenas. Os 
problemas que eu tenho são quando alguma conexão faz um uso mais 
agressivo do banco. Todos os outros clientes sofrem com isso. Aliás, 
este é um outro problema que venho enfrentando: não consigo cancelar o 
processamento de algumas queries, nem matar conexões! Às vezes preciso 
rodar alguma query mais pesada no servidor de produção (mesmo não sendo 
o banco de dados de produção) e, se ela demorar demais, todos os outros 
clientes ficam intrabalháveis neste período. Há alguma maneira de matar 
um cliente no super server?

Unindo o pouco uso da memória e o problema com o excesso de 
processamento de alguns clientes, pensei em utilizar o classic server, 
porque poderia matar a conexão mal-criada facilmente.

É, já considerei a atualização para o firebird 1.0 e até para 2.0, mas 
mesmo na primeira há uma incompatibilidade que eu não me lembro agora, 
mas tem a ver com renomeação de tabelas em joins. Mas essa atualização 
está nos planos sim. Inclusive estou viabilizando uma forma de ter as 
udfs feitas em Delphi rodando em Linux (freepascal?). Pretendo ter um 
Firebird rodando em Linux, pois já ví que nele não existe este problema 
com a memória.





Mais detalhes sobre a lista de discussão lista