De ce mod_perl, perl

În acest articol vă voi prezenta principiile de bază ale mod_perl, voi obține că voi înșiși veți dori să încercați să lucrați cu el și să oferiți ca exemple mai multe site-uri bine cunoscute create folosind mod_perl sub Apache.

Ce este mod_perl?

mod_perl este nucleul proiectului de integrare Apache / Perl, care combină toate capabilitățile limbajului de programare Perl și serverul web Apache.

De la început, Apache a fost creat în așa fel încât să-i extindeți capabilitățile prin adăugarea de "module". Modulele pot face totul necesar, cum ar fi rescrierea interogărilor cu HTTP, restricționarea accesului la anumite pagini și efectuarea unei căutări în baza de date. De obicei, modulele sunt scrise în C, cu care uneori este dificil de a lucra. mod_perl - un modul care vă permite să faceți toate aceste lucruri, și în plus, utilizarea Perl face ca procesul de proiectare mai rapid decât C. Apache este cel mai frecvent pe internet web-server și mod_perl - una dintre cele mai primenyamyh module extinderea capacităților sale.

De ce este mod_perl atât de cunoscut?

Dacă vă place Perl și serverul dvs. preferat de web - Apache, atunci vă va plăcea mod_perl dintr-o privire. Și de îndată ce o vei face, nu te vei mai uita din nou, pentru că vei înțelege: mod_perl are tot ce ai nevoie. Și chiar dacă dintr-o dată veți găsi că ceva lipsește în ea - spuneți așa. Înainte de a putea conta la trei, cineva va avea timp să-l creeze pentru tine. Și, desigur, veți dori să oferiți ceva în schimb. Ca rezultat, veți adăuga ceva de-al dvs. - aceasta va economisi mult timp pentru alți membri ai comunității mod_perl și ei vor putea să creeze și mai multe lucruri pentru nevoile altor utilizatori.

Acest lucru se transformă în imagine: mod_perl mărește capacitățile utilizatorilor, care la rândul lor măresc capacitățile mod_perl, ceea ce la rândul lor crește capacitățile utilizatorilor, care la rândul lor. Acest lucru este la fel de elementar ca reacția nucleară pe care ați trecut-o la școală (sau altfel veți trece).

Folosind mod_perl, puteți scrie modulele Apache în întregime în Perl. Acest lucru vă oferă posibilitatea de a face cu ușurință lucruri care sunt complexe sau pur și simplu imposibile pentru programele normale CGI, cum ar fi procesarea interogărilor, scrierea autentificării și gestionarea jurnalului.

Există o economie de timp mare la pornire și compilare. Interpretul Perl încorporat în server reduce în mod semnificativ timpul consumat fără a pierde un interpret extern pentru fiecare cerere HTTP pentru care este necesar codul Perl. Cel puțin o astfel de importanță este reprezentată de cache-ul de cod: modulele și scripturile sunt încărcate și compilate o singură dată - în momentul primei porniri a serverului. În restul vieții serverului, gestionarea scripturilor provine din memoria cache, astfel încât serverul trebuie doar să ruleze codul precompilat. În cele mai multe cazuri, acest lucru este la fel de rapid ca executarea programelor compilate în C.

Acesta este un câștig mic în timp la pornire. În special, în conformitate cu mod_perl nu este nevoie pentru a rula proces individual pentru fiecare cerere, așa cum se face adesea în alte extensii pentru web-servere. Cel mai frecvent mecanism al acestor extensii - Common Gateway Interface (CGI) - complet înlocuit cod Perl care este angajată în procesarea procesului de interogare în faza de generare de răspuns. În acest scop, există două interconectate cu modulul țintă mod_perl: Apache :: Registry, care poate rula perfect nemodificate scripturi CGI Perl și Apache :: PerlRun, care efectuează o problemă similară existentă, dar vă oferă posibilitatea de a rula script-uri într-o anumită măsură, „mai murdare “.

mod_perl vă oferă posibilitatea de a configura programele de procesare Apache și Perl (utilizând directiva PerlSetVar și secțiunea . În același timp, administrarea unui server cu multe gazde virtuale devine extrem de simplă. Hei, puteți chiar să configurați propriile directive de configurare.

Cât de rapid și stabil este mod_perl?

În fiecare secundă din fiecare zi, mii de site-uri din întreaga lume folosesc mod_perl pentru a gestiona sute de mii de pagini web. Apache și mod_perl sunt estimate să fie unele dintre cele mai bune programe scrise vreodată. Desigur, ele continuă să se dezvolte și să se îmbunătățească, dar nu trebuie să lucrați cu "produse semifinite" - pentru site-urile dvs. puteți utiliza un produs stabil și puteți da altora ocazia de a testa noi versiuni.

Vreau să vă arăt doar câteva site-uri dintre cele mai populare și frecvent vizitate, gestionate prin mod_perl. Este mai bine să vezi decât să auzi o sută de ori. Vizitați aceste site-uri și simțiți diferența. Veți vedea că mod_perl este rulez!

Câte site-uri lucrează cu mod_perl pentru serverul web Apache?

În față

Trebuie să fiți încântați de lansarea Apache 2.0, noua generație a celor mai bune servere web. Principalele caracteristici ale serverelor web de nouă generație sunt procese multi-procesate care vor spori capacitățile serverului de extindere și, bineînțeles, nivelul mult așteptat de filtrare.

Trebuie să fii la fel de îngrijorat de versiunea recentă a versiunii Perl 5.6, a cărei trăsătură principală este sprijinul (aproape) stabil pentru firele care te-au lovit în versiunea anterioară a Perl, dar unde era prea instabilă.

Întrebați, cum toate acestea afectează mod_perl? mod_perl 2.0 este în curs de dezvoltare și va profita din plin de noile versiuni ale Apache și Perl. Cea mai importantă îmbunătățire va fi reducerea mărimii proceselor - proiectarea arborelui de operare Perl va fi aproape complet distribuită între firele aceluiași proces.

Desigur, sunt destul de multe surprize în jurul nostru. Va fi o lungă perioadă de timp înainte ca toate aplicațiile noastre să poată beneficia de multithreading. Motivul principal este că majoritatea modulelor Perl disponibile pe CPAN nu sunt proiectate să funcționeze în mod fiabil. Dar nu pierde inima. Aveți posibilitatea să dezactivați utilizarea firelor într-un cod Perl non-thread-safe sau într-unul care utilizează module care nu sunt proiectate pentru multithreading.

Vreau mod_perl chiar acum, de unde pot să-l iau?

Îmi place mod_perl și vreau să știu cine a creat acest produs minunat!

Ei bine, Doug MacEachern este responsabil pentru totul :). El este tipul care a dat comunitatea mod_perl. Acesta este proiectul Lin pentru proiectul mod_perl.

Dar, după cum știți, într-o mare comunitate vor exista întotdeauna oameni care doresc să ajute, și există un întreg grup de dezvoltatori din întreaga lume, creând patch-uri pentru mod_perl, dezvolta module întregi pentru el la Perl, verifica serverul pentru erori și să-l protejeze. Mă tem că lista de dezvoltatori implicați în acest caz va fi prea lungă pentru ao aduce aici. Dar sunteți bineveniți în lista de discuții - și puteți vedea toți acești oameni în acțiune. Promit, nu veți regreta, mai ales dacă doriți să aflați mai multe și nu numai despre mod_perl. Vezi pentru tine.

Implică-te

Articole similare