On Thu, 23 Mar 2006, Cesar wrote: > Em Segunda 13 Fevereiro 2006 08:19, Antonio da Silva Martins Junior escreveu: > > Entretanto, em um servidor Unix, exceto no caso em que este seja dedicado > > a um único serviço (desde que não seja o apache), o fato de permitir a > > execução de vários programas simultaneamente já irá aproveitar o fato de > > existirem vários processadores na máquina. > > Antonio, esse assunto me interessa. Você poderia me explicar melhor essa sua > frase? O motivo é que meu o programa que estou desenvolvendo usa o Apache e > eu quero otimizar meu sistema para maquinas multiprocessadas. Por enquanto > acredito que não tenho que fazer nada pois é um CGI e a cada requisição do > usuário um novo processo é iniciado. Se o gerenciador de processos fizer um > bom trabalho e balancear a carga entre os processadores da maquina meu > programa já esta pronto para se beneficiar desse recurso. Correto?
Correto, em termos! O que eu disse é que se o servidor executa somente uma aplicação esta aplicação ficara presa a um único processador. O Apache por outro lado já executa n tasks em paralelo e o Scheduler irá alocar tempo de CPU em quaisquer processadores livres. > Mais alguns detalhes: > O executável do CGI propriamente dito tem apenas 1,2k de tamanho, o resto do > sistema é composto por bibliotecas dinâmicas, a idéia é otimizar os recursos > e os tempos de carga conforme o numero de requisições aumentar. > Como o sistema é enorme não liguei todas as bibliotecas diretamente no CGI, > apenas as bibliotecas comuns a todo o sistema são ligados diretamente, as > outras são carregadas com dlopen se forem necessárias. Não trabalhei ainda com a criação de bibliotecas dinâmicas, mas pelo que me recordo da teoria a sua utilização irá economizar a memória da area de código, que é compartilhada, e o tempo de carga pois a biblioteca só é carregada uma vez para todas as instâncias/processos que a utilizem. Com a utilização de uma máquina multi-processada você irá perceber a melhora de performance porque no pior caso o SO utiliza um processador e a sua aplicação o outro. No seu caso como a sua aplicação utiliza diversas tasks simultâneas o ganho de performance está praticamente garantido! Mas lembre-se de otimizar o sistema como um todo! Não adianta nada várias CPUs rápidas e pouca memória ou um disco lento (se o sistema depende de um banco de dados). O melhor é o equilibrio entre os componentes! Antonio. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Antonio S. Martins Jr. - Support Analist | "Only The Shadow Knows | | Universidade Estadual de Maringa - Brasil| what evil lurks in the | | NPD - Núcleo de Processamento de Dados | Heart of Men!" | | E-Mail: [EMAIL PROTECTED] / [EMAIL PROTECTED] | !!! Linux User: 52392 !!! | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ --------------------------------------------------------------------------- Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br Regras de utilização da lista: http://linux-br.conectiva.com.br FAQ: http://www.zago.eti.br/menu.html
