Migravimas iš „Apache“ į „Lighttpd“ (I dalis)

Remigijaus Jarmalavičiaus tinklaraštyje apie atvirą kodą, versijavimo sistemas, programavimą ir optimizavimą.

Vos prieš pusmetį migravau prie kito WEB serverio – „Lighttpd“. Seniau naudojau populiariausią pasaulyje „Apache“ serverį, tačiau vieną dieną nusprendžiau – reikia išbandyti ką nors naujo (tai žinoma, kad problemų trūko!). Taigi, taip ir padariau.

Kodėl nusprendžiau „Lighttpd“? Na, pažiūrėjęs įvairias statistikas buvau nustebęs, kad gali būti greitesnis serveris nei „Apache“. Žinoma, kiek statistikoje buvo tiesos, nė nežinau, nes tikrai ne viskas yra taip, kaip kūrėjai visada žada. Bet realiai, nenusivyliau, migruoti buvo verta.

Dalykas, kuris mane tikrai šokiravo – labai greitas serverio persikrovimas. „Apache“ serveris su 18 tinklapių persikraudavo per 2-4 sekundes, o tai, turint gerą lankomumą – yra per daug. Aišku, galima daryti kaip daro įvairios įmonės – perkrauti serverį 4 nakties, kada lankomumas teoriškai ir praktiškai yra mažiausias. Bet man tai tikrai nėra priimtina. Taigi, „Lighttpd“ su tomis pačiomis svetainėmis persikrauna per… Sekundės dalį! Taip tikrai, nė nepajusite, kad serveris buvo perkrautas.



Mano svetainės lankomumas – 4 val. nakties lankomumas mažiausias, tačiau keltis tada ir perkraudinėti serverį – tikrai ne man…

„Apache“ visada turėjo vieną labai didelį trūkumą: jeigu turite daug tinklapių ir kiekvienas domenas turi atskirą konfigūraciją, tai jeigu įvelsite klaidų konfigūracijoje, tai jums brangiai kainuos. Pirmiausiai – nepasileis „Apache“. Aišku, klaidos bus įrašytos į žurnalo failą (log'ą), tačiau sugaišite laiko, kol į jį pažiūrėsite ir bėgsite atgal į konfigūraciją tvarkyti. O su „Lighttpd“ viskas daug paprasčiau. Įvėlėt klaidą – ramiai, serveris pasileis, visos svetainės veiks išskyrus tą, kurios konfigūracijoje įvelta klaida. Juk nuostolis tikrai mažesnis, nei, kad visos svetainės neveiktų, taip?

„Lighttpd“ konfigūravimo failai – gėris! Taip lengvai ir paprastai viskas apsirašo, tikrai daug paprasčiau negu „Apache“ konfigūracijos. Panašumas tarp abiejų serverių yra tas, kad galima išjungti nereikalingus modulius ir taip sutaupyti tūkstantąją sekundę perkraunant serverį... Na, šitoje vietoje gal atminties naudojimą sumažinsite.

„Apache“ vs. „Lighttpd“ dokumentacija – lygiosios. Tikrai tiek viena, tiek kita nepriekaištinga.

PHP ir „Python“ paleidimas ant bet kurio serverio – lygiosios. Tiesa, abi sistemos veikia kiek skirtingai. „Lighttpd“ viską valdo per „fcgi“, o tai greičio tikrai gerokai priduoda ant ilgiau trunkančių operacijų (išmėginta praktiškai).

Tiek „Lighttpd“, tiek Apache2 užima praktiškai vienodai. Žinoma, priklauso nuo to ką papildomai instaliuosi. Nes vien tik WEB serverio niekada neužtenka.

Tiesa, „Python“ ir „Apache2“ bendravimas man labiau patiko, nes teko susidurti su „Django dokumentacijos klaida“, kurioje parašyta, kad tam tikrų failų kurti nereikia, norint paleisti „Django“ ant „Lighttpd“. Deja, po visos dienos gaišaties, sukūriau kelis failus ir tik tada svetainė pradėjo veikti. Bet klaidas daro visi, nėra ko pykti…



Kitoje straipsnio dalyje – greičio statistika. Šiame pavyzdyje matome „Apache“ ir „Lighttpd“ užklausų apdorojimą per sekundę grafikus (requests per second). Statistika bus iš mano svetainių.

Na, kol kas tiek. Ir tiek gan nemažai prirašiau, tačiau taip visko ir neišpasakojau, tad tai paliksiu antrai daliai – statistikos ir įvairių problemų apžvelgimui.


Šiame straipsnyje: aklApacheLighttpd

NAUJAUSI KOMENTARAI

Galerijos

Daugiau straipsnių