Fernando Lozano Consultor Independente Prof. Faculdade Metodista Bennett Webmaster da Free Software Foundation fernando@lozano.eti.br SEPAI 2001 O Que So Estes Softwares O Que So Estes Softwares Apace! Ser"idor web www.apace.or# P$P! Interpretador de Ser"er%Side Scripts www.pp.net M&S'L! Ser"idor de Bancos de (ados )elacionais www.m&s*l.or# Para Que Servem Para Que Servem Para a cria+,o de aplica+-es web Com.rcio /letr0nico Intranets Portais Webmail Wor1flow 2 3roupware Sistemas de Informa+,o ... !omo "u#c$o#am !omo "u#c$o#am 4a"e#ador Web %%%%%%%%%%%%% $5ML 6a"aScript Apace P$P M&S'L 7su8rio Site Internet ou Intranet Internet, Lan ou WAN Qua% o Pape% &e !a&a 'm Qua% o Pape% &e !a&a 'm 4a"e#ador Web! Interface com o usu8rio Apace! Conecti"idade9 se#uran+a e auditoria P$P! )e#ras de ne#:cio9 l:#ica da aplica+,o M&S'L! Acesso e armazenamento de Informa+-es Por(ue 't$%$)ar o Apache Por(ue 't$%$)ar o Apache ; o l<der do mercado9 com mais de =>? dos sites de toda a Internet ; o mais se#uro9 n,o foi afetado por Code )ed9 4inda9 Sircam9 ... Criado para atender @s demandas dos maiores pro"edores e sites web 4,o tem concorrentes *uanto @ ri*ueza de recursos9 estabilidade9 performance9 ... So*re o Apache So*re o Apache Sur#iu *uando #randes pro"edores9 insatisfeitos com os ser"idores web dispon<"eis9 modificaram o 4CSA ttpd AA PAtC$/d web ser"erB Suporta centenas de dom<nios "irtuais simultCneos9 cripto#rafia DSSLE9 certificados di#itais9 controle de acesso9 proF& e redirecionamento9 entre outros features /Ftens<"el pela Module API Por(ue 't$%$)ar o PHP Por(ue 't$%$)ar o PHP Foi criado do zero para a Internet em "ez de ser a adapta+,o de uma tecnolo#ia anterior Forncece controles sobre o uso de mem:ria9 ar*ui"os9 CP79 uploads9 etc9 de modo *ue uma aplica+,o com bu#s n,o poder8 derrubar o ser"idor web F8cil aprendizado e com recursos de GG 3rande *uantidade de m:dulos e bibliotecas prontas dispon<"eis So*re o PHP So*re o PHP 7tiliza uma lin#ua#em *ue . uma simplifica+,o e eFtens,o do Perl )espeita as permiss-es do sistema de ar*ui"os mesmo rodando como m:dulo Interpretado9 mas podemos obter performance de c:di#o compilado utilizando add%ons como o Hend Gptimizer9 o P$P Acelerator e outros /Ftens<"el por m:dulos escritos em C M+&u%os &o PHP M+&u%os &o PHP Suporte a protocolos como S4MP9 SM5P9 PGP9 IMAP9 L(AP9 ... 3era+,o de documentos IML9 WML9 P(F9 SWF DFlasE9 3IF9 P43 Acesso nati"o a bancos de dados Cripto#rafia e compress,o de dados Por(ue 't$%$)ar o MySQL Por(ue 't$%$)ar o MySQL BaiFa demanda de recursos de ardware Simplicidade de administra+,o Protocolo de rede enFuto ; o mais "eloz do mercado Gtimizado para as aplica+-es t<picas da web9 onde ocorrem mais consultas do *ue atualiza+-es So*re o MySQL So*re o MySQL G M&S'L foi criado para ser eFtremamente 8#il9 por isso decidiu n,o implementar recursos *ue #eram muito o"eread como tri##ers9 loc1s9 subselects e n<"eis de isolamento A ar*uitetura baseada em mJltiplos treads #arante performance sob acesso concorrente Por(ue 't$%$)ar os ,r-s Por(ue 't$%$)ar os ,r-s Por*ue fornecem tudo o *ue "ocK necessita para construir aplica+-es e sites web sofisticados9 e de maneira mais simples do *ue outras alternati"as Por*ue n,o trazem ele"ados custos de licen+a de run-time9 por CP7 ou por usu8rio Por*ue fornecem produti"idade9 performance9 escalabilidde9 se#uran+a e confiabilidade Principalmente por*ue s,o software %$vreL ,e#ho Que M$.rar Para ,e#ho Que M$.rar Para /0'1L$#u2 /0'1L$#u2 4,o9 pois tanto o Apace *uanto o M&S'L e o P$P funcionam nati"amente em *ual*uer "ers,o Windows9 desde o MN at. o IP OocK pode utilizar outros sistemas 7niF como o Solaris9 AII9 $P%7I9 FreeBS(9 ... OocK tamb.m pode utilizar em GS2P e MacGS2I Posso 3ese#vo%ver Ap%$ca45es Posso 3ese#vo%ver Ap%$ca45es !omerc$a$s !omerc$a$s 4,o eFiste nada contra a comercializa+,o de software li"re9 o *ue "ocK n,o pode fazer . restrin#ir a c:pia e uso do software li"re Software Comercial Software Propriet8rio Pro#ramas #erados com ferramentas li"res n,o tem *ue ser distribu<dos como software li"re %% "ocK pode criar e "ender solu+-es propriet8rias com Apace9 P$P e M&S'L ,e#ho Que 't$%$)ar os ,r-s Em ,e#ho Que 't$%$)ar os ,r-s Em !o#6u#to !o#6u#to 4,o9 esta . apenas uma combina+,o popular na Internet. Gutras alternati"as seriam! Apace com Perl9 P&ton9 ASP9 6a"a9 ... P$P com IIS9 PWS9 Iitami9 ... P$P com Post#reS'L9 Interbase9 Gracle9 (BP9 MS S'L Ser"er ... M&S'L com Perl9 P&ton9 ASP9 6a"a9 ... Qua#&o 0o 't$%$)ar o Apache Qua#&o 0o 't$%$)ar o Apache 'uando "ocK sentir falta das paradas causadas por "<rus 'uando "ocK precisar Qustificar up#rade de ardware 'uando "ocK ti"er *ue #astar o or+amento anual do departamento Qua#&o 0o 't$%$)ar o PHP Qua#&o 0o 't$%$)ar o PHP 'uando necessitar de performance a todo custo %% utilizar aplica+-es compiladas ou construir aplica+-es distribu<das 'uando necessitar de recursos GG mais sofisticados para or#anizar proQetos de #rande en"er#adura 'uando necessitar de verdadeiros proQetos em trKs camadas %% mas o P$P pode ser inte#rado com um middle tier em C ou em 6a"a Qua#&o 0o 't$%$)ar o MySQL Qua#&o 0o 't$%$)ar o MySQL 'uando necessitar de recursos S'L a"an+ados9 como stored procedures e "iews /m aplica+-es transacionais Dmuitas inclus-es 2 atualiza+-esE /m aplica+-es GLAP D(ataMarts9 BI9 ...E 'uando utilizar bancos de dados muito #randes9 *ue necessitem ser espalados em "8rios discos ou mesmo em "8rios ser"idores Dbancos distribu<dosE "a%sos M$tos So*re o MySQL "a%sos M$tos So*re o MySQL 4,o suporta transa+-es Deste recurso pode ser abilitado ou n,o para cada tabelaE 4,o permite replica+,o Da capacidade de replica+,o . fornecida por pro#ramas eFternos9 mas espec<ficos para o M&S'L9 de acordo com a cultura 7niFE "oco #o PHP "oco #o PHP G desen"ol"edor n,o se preocupa com o Apace9 *ue . responsabilidade do administrador de rede G desen"ol"edor n,o se preocupa com o M&S'L9 pois ele pode ser trocado por *ual*uer banco S'L Aplica+-es P$P funcionam com poucas ou nenuma modifica+,o com outros bancos9 e n,o s,o afetadas pelo ser"idor web 3emo &o PHP 3emo &o PHP Oamos "er al#umas caracter<sticas do desen"ol"imento em P$P atra".s de eFemplos