+ Responder ao Tópico



  1. #1
    c0deks
    Visitante

    Padrão Apache-2.2.3 vs IIS-6 - Testes de performance - Decepção

    Olá a todos.

    Recentemente a empresa em que trabalho adquiriu cinco servidores Dell PowerEdge 1900, na configuração abaixo:

    2 processadores Intel Xeon 1.6 Dual Core
    1 GB de Memória
    2 HD's SATA de 80GB (Configurados em RAID 1 - Hardware)
    Placa de rede Gibabit

    Resolvemos fazer um teste, já que na empresa existem adeptos de Linux ( como eu ) e adeptos de Windows, então pegamos dois dos servidores, e instalamos Linux em um deles, e Windows 2003 Server em outro deles, no Linux a configuração era:

    Linux Slackware 11.0
    ----------------------
    Apache 2.2.3 - Configurado como worker e atomics habilitado
    PHP 4.4.4
    Cache desabilitado

    Windows 2003 Server
    ----------------------
    IIS 6
    PHP 4.4.4
    Cache desabilitado

    Plugamos os dois micros com um cabo Cross-over em um Notebook Toshiba, e executamos testes com o software de Webstress da Microsoft, e nos testes infelizmente o resultado não foi bom, fizemos testes simulando 10 usuários enviando 10 requisições para o servidor, vejam os resultados:

    Windows
    -----------
    Tempo de resposta médio: 49ms
    Número de pacotes respondidos: 659
    Taxa de recebimento média: 4986,00 MB
    Uso de CPU: 30%

    Linux
    -----------
    Tempo de resposta médio: 54ms
    Número de pacotes respondidos: 233
    Taxa de recebimento média: 4452,00 MB
    Uso de CPU: 99%


    Em todos os testes que fizemos o IIS se saiu melhor, mesmo alterando os parametros no programa de Webstress, em todos os testes desse tipo que eu já havia visto na Internet o Apache se saia melhor, mas neste teste ele levou a pior, solicito a comunidade que exponham suas opiniões sobre isso.

    Desde já, agradeço

    []'s

  2. #2
    Under-linux.Org Team Avatar de MarcusMaciel
    Ingresso
    Dec 2000
    Localização
    Boston
    Posts
    1.961
    Posts de Blog
    44

    Padrão

    c0deks tem varias coisas que vc pode fazer para melhorar o desempenho do apache com php.

    primeiro o apache deve rodar como prefork que e o recomendado para o php
    segundo alterar os parametros do prefork

    <IfModule prefork.c>
    StartServers 15
    MinSpareServers 15
    MaxSpareServers 20
    ServerLimit 256
    MaxClients 180
    MaxRequestsPerChild 500
    </IfModule>

    Desabilite o keepalive
    KeepAlive Off

    Esses sao os que me atendem aqui na underlinux.

    Outra coisa que pode ajudar e muito é user o eaccelerator pra acelerar o php eAccelerator: PHP Accelerator, optimizer, dynamic content cache - Trac
    usamos a versao 0.9.5 aqui na underlinux



    Espero que ajude e resolva o seu problema

  3. #3
    c0deks
    Visitante

    Padrão

    Entendi...eu tinha configurado com KeepAlive On, e com MPM worker

    Mas mesmo assim cara, ficou comprovado que o Apache em configuração padrão é mais lento em performance do que o IIS né, pois antes de qualquer alteração de configuração testamos os dois com configuração padrão e sem PHP instalando, só servindo HTML, e o Apache também perdeu...

    Sou totalmente a favor do Linux, mas deve ser admitido quando em algum segmento ele foi abatido, acho isso até legal, pois quanto maior a disputa em um determinado segmento da tecnologia, melhores serão os produtos deste mesmo segmento, e se realmente o Apache 2 perdeu p/ o IIS 6 em performance, está lançado ai o desafio para melhorar cada vez mais ( e por sinal o apache já é excelente, muito bom mesmo ).

    De qualquer maneira o trato era esse, se o Apache ganhasse os 5 servers seriam Linux, se o Windows ganhasse os 5 servers seriam Windows...o Windows ganhou, o Slack já foi desinstalado e eu fui obrigado a instalar Windows 2003 Server nos 5 servers.

    Obrigado pela ajuda, já guardei essas configs e em outro eventual teste irei testa-las.

    []'s

  4. #4

    Padrão

    A ferramenta de testes, desenvolvida pela Microsoft, não pode ter influência ?

  5. #5
    c0deks
    Visitante

    Padrão

    Não acho que a Microsoft, por mais que haja rivalidade, chegaria a este ponto, cheguei a pensar nisso, mas acho que eles não fariam isso, mas num sei né, gostaria da opinião de outros membros do Forum sobre o assunto, mas minha opinião é que não houve influência não viu cara...mas nunca se sabe neh... =/

    []'s

  6. #6

    Padrão

    Cara eu acho que pode ter algumas otimizações do IIS 6 que essa ferramenta pode explorar, e como essa otimização não ta presente no apache ele tem um resultado pior, sei la o tipo de pacote que eles enviam pode ser formulado pra rodar melhor em IIS do que em Apache, tem de pensar nessas prossibilidades.

    falows

  7. #7
    c0deks
    Visitante

    Padrão

    Entendo...também pensei nessa probabilidade...num sei neh...

    Mas pensei em outra razão, depois de conversar com meu amigo Medeiros64, usuário altamente ativo do Viva o Linux, ele me disse que talvez o kernel tivesse que ser recompilado para trabalhar usando todo o potencial que os dois processadores Xeon Dual Core poderiam oferecer, será isso, na instalação do Slack eu usei o kernel huge26.s, pergunto aos slackers de plantão, seria necessária uma recompilação...???

    Como essa foi minha primeira experiencia com Dual Cores até pensei nisso, mas depois de ver a maquina dar boot tão rapidamente ( aprox 20secs ) achei que ela já estava obtendo tudo que os processadores podiam oferecer...mas num sei neh...seria necessária uma recompilação??

    Aguardo respostas...

    []'s

  8. #8

    Padrão

    Isso é verdade... não adianta ter um sistema poderoso se ele tem um gargalo no software.