apache2 și performanța

sâmbătă, 7 ian. 2012, 18:06

Săptămâna asta am avut ocazia să pun mâna pe niște cunoștințe foarte utile în cadrul unui curs din facultatea aia unde nu se predă nimic care să aibă utilitate practică. Întâmplător cunoștințele cu pricina chiar s-au dovedit a-mi fi utile spre a înțelege mai bine cum funcționează serverele web și cum să le gestionez cât de cât eficient pe mașina proprie, mașină pe care sunt găzduite și cărămizile. Astfel, dat fiind faptul că avem studiul de caz deja pregătit, vă pot împărtăși o parte din cunoștințele acumulate fără prea mare efort.

Web-ul constă – dedesubtul sferei abstracte formate din tot felul de buzzword-uri care mai de care mai cu sclipici, la nivelul său cel mai de jos – în servicii care oferă și eventual primesc informație peste protocolul HTTP. Toate bune și frumoase, însă dacă stăm și cugetăm un moment, realizăm că acele servicii rulează pe mașini fizice, care au peste ele sisteme de operare, care oferă protecție și flexibilitate, asigură (sau nu) performanța și așa mai departe.

De exemplu site-ul de față rulează pe o mașină având instalată un server web Apache2, peste un Debian care rulează pe un hardware ce constă în mare dintr-un procesor rulând la 800MHz, cu un cache de 256KB și o memorie RAM de 512MB. Mașina asta trebuie să livreze un număr de site-uri, multe din ele implementate în PHP, într-un timp finit suficient de mic, pentru a asigura că utilizatorul nu moare de bătrânețe, sau mai degrabă de plictiseală, așteptând să se încarce pagina. Iar dacă la nivelul WordPress-ului treaba se rezolvă destul de ușor printr-un plugin de caching, la nivelul aplicației și al sistemului de operare treaba nu stă chiar așa de simplu. (mai mult…)