Em 28/11/2011 17:50, Leonardo Augusto escreveu: > Ummm essa questão(ao meu ver), envolve vários fatores, espero poder te > ajudar te indicando a observar alguns detalhes: > > - overview - fatos - porque dê - pra quê ffeebsd > ----------------------------------------------------------------------------------------------------- > - se tunares o freebsd corretamente, muito provavelmente, não obterás > desempenho melhor de SO (no mesmo hardware, x86) para a aplicacao que > desejas. > - mesmo que voce "soque" tudo num servidor apenas, apache, mysql, etc > - enquanto tens poucos acessos "todo mundo" é "igual" ou "mais rapido" > que o Freebsd, aparentemente, ehe. > - agora, quando "tacar" "trocentos" mil hits em cima, aí que a coisa > começa a se definir, quando o swap(virtual memory) começar a ser > usado, as máscaras caem. > - já vi um benchmark do bsd 7.2 com mysql apache e etc, no mesmo > hardware, em relacao a um linux, na epoca o mais recente tambem. > até certo ponto(enquanto nao usava-se swap e com xxx conexoes > simultaneas) o linux era levemente superior ao bsd em desemepenho, > quando o numero de conexcoes chegou a XX.XXX e o swap comecou a se > fazer necessario, > o linux degradou ABSURDAMENTE, VERGONHOSAMENTE, LIXOSAMENTE, > TOSCAMENTE HORRIVELMENTE NOJENTAMENTE a performance, o cara nem > conseguia entrar com o ssh na maquina.. > enquanto isso o Freebsd continuou mantendo seu desepenho como o vinha > fazendo com xx conexoes.. .o ssh entrava normal... e nao parece que > havia trocentas conexoes na maquina... INCRIVEL. > - sei que tem varias pessoas aqui que gostam e defendem o linux, mas é > fato, a VM e a pilha tcp e o IO do bsd sao imbativeis nesse caso. > - Nao vou citar o nome, mas conheco uma empresa de listas de email > online, tipo o yahoo groups, que comecou em linux, logo que o > movimento cresceu, TUDO SENTOU NA GRAXA, foi um desespero total, > quando a memoria se exauria, o linux travava... os caras iam trocar o > hardware, ate que decidiram antes testar o freebsd.... ahaha nem teve > graça, chegava a ter 3000 processos em PERL processando emails > e a maquina normal.... no mesmo hardware, o linux com 800 processos > PERL ja sentava e travava.... ficava MUITO LENTO, a rede nao > funcionava, etc. > Os caras usam freebsd ate hoje, e enviam mais de 150 milhoes de emails > por mes !! fora acessos web, mysql etc.. > > Enfim, poderia ficar o dia inteiro argumentando pq vc deve usar o > freebsd se pretende ter muitos acessos algum dia, é como vc ter um > .357 magnum pra caçar rato, é besteira, até o dia que sua familia > cresce > e voce precisa caçar um búfalo, um .22 que mata o rato, nem faz > cócegas no búfalo. > Voce só vai entender do que o freebsd é faz quando chegar esse momento. > > Essa é a minha opiniao baseada na minha experiencia, uso bsd a 13 > anos, ja usei linux antes por 2 anos e SÓ ME LASQUEI com aquela > tranquera. > Aprendi UMA VEZ a configurar o freebsd na versao 3.x alguma coisa e > ate hoje nao mudou nada.... vai configurar um debian, um redhat e um > suse pra vc ver como é facil, kkkkk (nojento, irritante, tosco > aarrgggggg) > Tenho um servidor que comecou no freebsd 6.1, ja fiz upgrade dele até > o 7.2, desde la nao fiz mais e ele ja esta com uptime com mais de > 1.100( mil e cem ) dias.... > > Bom, mas chega de bla bla bla pra argumentar pq eu acho que vc esta > fazendo uma boa escolha em usar freebsd, de olhos fechados.. > > Agora vou dar minhas dicas diretas sobre o que eu acho que voce deve > tomar atencao para configurar seu servidor web. > > - meus beans - levando em conta APENAS UM SERVIDOR, rodando tudo nele, > e nao um cluster ou master slave, isso já seria outra historia. > --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- > > - esqueça virtualização, se quer algo hardcore, instale um bsd > nativamente no hardware. > - o hardware depende muito do tipo de aplicacao, algo baseado em mysql > tipo wordpress ou arquivos estaticos como fotos e downloads ??? > - se for mais textual usando mysql, coloque a maior quantidade de ram > que puder, 32G por exemplo, num INTEL 64 bits mother de servidor e nao > desktop pelo amor de deus, > nao vai me comprar um PC na loja da esquina e querer transformar num servidor. > - se for muito acesso a fotos e downloads, tente por uma controladora > dedicada com RAID 10 com um bom cache, acho que hoje nao é mais SCSI e > sim SAS, isso sai caro.. .mas vale... > - tente uma placa moderna com FSB 1333 > > - voce precisa recompilar o kernel, as versoes mais atuais do bsd > passaram tudo pro SYSCTL as confs que se fazia no kernel, entao o que > vc deve fazer é tirar tudo que é declaracao > de hardware nao presente, placas de rede, controladoras, etc, CAPA > TUDO FORA... de uma pesquisada sobre kernel tunning... sempre se acha > algumas dicas... > > - antes de recompilar o kernel e os ports que ira usar coloque isso no > /etc/make.conf > > CFLAGS= -O2 -pipe -funroll-loops -ffast-math > COPTFLAGS= -O2 -pipe -funroll-loops -ffast-math > WITHOUT_X11=yes > NO_X=yes > > - meu sysctl.conf ( pesquise sobre as opcoes, pode melhorar ou > adicionar algo, os buf ali podem ser tunados segundo o caso ) > > machdep.hyperthreading_allowed=1 > security.jail.set_hostname_allowed=0 > security.jail.allow_raw_sockets=1 > security.jail.socket_unixiproute_only=1 > security.jail.sysvipc_allowed=0 > security.jail.enforce_statfs=2 > security.jail.allow_raw_sockets=1 > security.jail.chflags_allowed=0 > kern.maxfiles=65535 > kern.maxfilesperproc=32768 > kern.ipc.somaxconn=8192 > kern.ipc.maxsockbuf=2097152 > kern.ipc.maxsockets=81920 > kern.ipc.shmmax=33554432 > kern.ipc.shmall=32768 > kern.polling.enable=1 > kern.polling.user_frac=50 > vfs.vmiodirenable=1 > vfs.ufs.dirhash_maxmem=67108864 > kern.maxvnodes=500000 > net.inet.ip.check_interface=1 > net.inet.udp.blackhole=1 > net.inet.tcp.blackhole=2 # blackhole pings, traceroutes, etc. > net.inet.icmp.icmplim=100 > net.inet.ip.fw.dyn_max=4000 > net.inet.tcp.sendspace=65535 > net.inet.tcp.recvspace=32768 > net.inet.udp.recvspace=65535 > net.inet.udp.maxdgram=57344 > net.local.stream.recvspace=65535 > net.local.stream.sendspace=65535 > > - se voce puder instalar tudo via ports, (atualize o mesmo antes ok) > eu recomendo, pois se voce usar o portupgrade, pode manter tudo > atualizado facilmente. > voce sempre pode dar um make extract a "mecher" nas configuracoes dos > makes se precisar para tunar algo. > > - O apache pode ser usado no bsd de maneiras diferentes, prefor MPM ou > worker MPM, sao coisas diferentes, pesquise sobre. > - Se vais usar muito arquivo estatico, tente usar o lighttpd ou o > nginx no lugar do apache, para arquivos estaticos eles sao mais > eficientes. > - se for usar php, utilize o modo com fast-cgi, nao use o mod_php... > (estufa o apache sem necessidade), voce tem mais beneficios como > mod_fastcgi e o php > rodando em separado do apache. > > - Se for usar php acessando mysql, tente usar o MEMCACHE, vais te salvar a > vida. > > - O memcache tambem pode ser usado com o apache para arquivos > estaticos.. mas acho que nao vale a pena, use o lighttpd ou o nginx > pra isso. > > - Tunar o mysql tb é muito importante... bem como sua aplicacao nao > conter erros ridiculos como uma consulta sem indice ou com indice > errado... nao tem cristo que va resolver teu problema nesse caso. > > - O file system default do bsd tambem precisa de alguns ajustes, se > tiver muitos acessos a arquivos, voce pode tirar fora o softupdates, > mas o risco nao vale a pena, se tiver uma queda de energia > podes perder muita coisa, mas o ganho de performance é substancial, > mas acho que nao seja o teu caso. > eu apenas tiro fora o esquema de atualizar o last access do arquivo, > uma bobagem la que da diferenca, tal do "noatime", mude entao no fstap > e ponha essa opcao na particao onde os arquivos iram ficar. > Eu deixei assim: > > /dev/aacd0s1d /tmp ufs rw,noatime 2 2 > /dev/aacd0s1f /usr ufs rw,noatime 2 2 > /dev/aacd0s1e /var ufs rw,noatime 2 2 > > > E assim cara, por aí vai... mas tenha dúvida que o freebsd irá > suportar bem qualquer extremo que vc venha a ter. > > Se eu puder ajudar mais, sinta-se a vontade para me chamar em pvt que > conversamos sobre o caso. > > Ah e nao se esquece que fazer testes com o "ab" a partir de outra > maquina ajuda muito a vc detectar os gargalos. > O freebsd por sí só nao vai te resolver, vc tem que setar ele e as > aplicacoes corretamente, e tudo sobre um hardware condizente e um link > mais ainda. > Se nao és sócio de um hosting, te aconselho um datacenter externo, > tipo nos eua, softlayer é muito bom, uso a 8 anos e NUNCA tive > problemas, > te colocam uma maquina a mais em ate 2h se precisar, ja possuem > solucao pra load balance nativo, etc, etc, etc > > Abraço > Leonardo > ------------------------- > Histórico: http://www.fug.com.br/historico/html/freebsd/ > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd Nossa que aula !!!
Mail muito bom, -- "Quando a Morte decide contar uma historia, A melhor ação que possa fazer é ouvi-la, e torcer por não ser a sua própria a tal história." Paulo Henrique. Analista de Sistemas / Programador BSDs Brasil. Genuine Unix/BSD User. Fone: (21) 9683-5433. ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd