[firebase-br] RES: Vantagens do Firebird SuperServer
Marlon David de Souza
marlon em sysmo.com.br
Qua Ago 22 09:53:17 -03 2007
> Então SS também abre uma thread para cada conexão mas compartilha buffer.
> CS abre uma thread para cada conexão e não compartilha o buffer?
>
Ao executar o FB-SS, o sistema operacional (S.0) cria um processo para rodar
o FB. A partir dai, para cada nova conexão é criado um processo filho
(thread). No entanto, todas essas threds compartilham a mesma área de memória
definida para cache de leitura. No caso de haver mais de um processador
reconhecido pelo S.O, o processo principal e suas threads são alocados
somente para um processador. Os demais não são usados pelo FB.
Já no FB-CS, para cada conexão é criado um processo pelo S.O. Cada um desses
processos pussui sua própria área de memória definida para cache de leitura.
No caso de haver mais de um processador reconhecido pelo S.O, o próprio S.O
se encarrega de alocar os processos para os processadores (ou núcleos) com
menor carga. Dessa forma, o FB-CS se beneficia da existência de mais de um
processador, porém perde na questão de compartilhamento de memória.
Sem mais,
Marlon David de Souza
Desenvolvimento
Sysmo Informática Ltda
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br] Em
> nome de Marlon David de Souza Enviada em: terça-feira, 21 de agosto de 2007
> 17:45
> Para: FireBase
> Assunto: Re: [firebase-br] Vantagens do Firebird SuperServer
>
> Certo. Essa nova versão irá usar a arquitetura da SS, em que, para cada
> nova conexão será criada uma nova thread à ser alocada para um determinado
> processador (ou núcleo).
> No entanto eu vejo um problema nessa arquitetura, pois um problema gerado
> em uma das thread, seja por bug do próprio FB, da base ou de uma UDF mal
> escrita, poderá tornar instável o processo principal do FB, quando não
> derrubar o próprio processo principal (e consequentemente todas as
> conexões). Este é um problema que já existe na versão atual da SS e que, a
> meu ver, dessa forma continará a existir na versão 3 da SS.
> Por isso eu pensei nesta outra solução, que me parece até mais simples de
> implementar do que a solução "Thread com suporte a SMP". O PostgreSQL por
> muitos anos usa com sucesso essa solução (um processo por conexão, mas
> todas compartilhando o mesmo buffer de memória).
>
> Sem mais,
>
> Marlon David de Souza
> Desenvolvimento
> Sysmo Informática Ltda
>
> Em Ter 21 Ago 2007 17:02, Carlos H. Cantu (TeamFB) escreveu:
> > MDdS> Agora, diante de tudo isso, visto que somente a versão CS faz uso
> > de mais de MDdS> um processador, eu me perguto se não seria melhor
> > existir uma versão CS que MDdS> fize-se uso de um buffer compartilhado de
> > páginas (shared buffers) em vez de MDdS> ter uma versão SS com suporte a
> > SMP. MDdS> O que vcs acham?
> >
> > Até onde eu lembro, o Firebird 3.0 vai eliminar CS, SS, etc.... vai
> > ser tudo uma coisa só.
> >
> > []s
> > Cantu (Membro do TeamFB - FireBase)
> > http://www.warmboot.com.br
> > FireBase - http://www.FireBase.com.br
Mais detalhes sobre a lista de discussão lista