Szybka ścieżka wzrostu

Dwa lata temu serwis nasza-klasa.pl to był jeden, wynajmowany serwer i czterech programistów, dziś firma korzysta z farmy 568 serwerów, a w dziale IT firmy pracuje już kilkudziesięciu specjalistów.

Dwa lata temu serwis nasza-klasa.pl to był jeden, wynajmowany serwer i czterech programistów, dziś firma korzysta z farmy 568 serwerów, a w dziale IT firmy pracuje już kilkudziesięciu specjalistów.

W listopadzie 2006 r. czterech przyjaciół - Maciej Popowicz, Paweł Olchawa, Michał Bartoszkiewicz i Łukasz Adziński - na wynajmowanym w home.pl serwerze uruchomili serwis nasza-klasa.pl. Trzej pierwsi, wówczas jeszcze studenci czwartego roku informatyki na Uniwersytecie Wrocławskim, zajęli się programowaniem, a czwarty stroną graficzną. Dwa lata później, klaster serwerów blade obsługujących gwałtownie zwiększający się ruch na serwisie nasza-klasa.pl znalazł się na 371 miejscu listy największych superkomputerów TOP500 (z udokumentowaną mocą przetwarzania 28,48 Gflopa).

Problem skali

Historycznie największym wyzwaniem, któremu musieli sprostać założyciele serwisu nasza-klasa.pl była właśnie największa w Polsce i szybko zwiększająca się liczba odsłon. „W naszym przypadku nie skutkowały ‘proste sztuczki’, które mogły wystarczyć nawet największym portalom horyzontalnym w Polsce” – mówi Paweł Olchawa, CTO portalu nasza-klasa.pl. „W przypadku tych serwisów, największą liczbę odsłon generuje bowiem strona główna, która dla każdego, odwiedzającego ją użytkownika wygląda tak samo. Dlatego serwisy te mogą raz wygenerować kod HTML strony, skompresować go i potem już serwować jak każdy inny statyczny kontent” – wyjaśnia.

1000

prawie tyle serwerów blade będzie obsługiwać użytkowników portalu nasza-klasa.pl na koniec 2009 r.

Natomiast w przypadku portalu nasza-klasa.pl takie rozwiązanie nie było możliwe, ponieważ strona główna dla każdego użytkownika jest inna. Zmienia się treść poszczególnych elementów – „Zdjęcia ostatnio dodane przez Twoich znajomych”, „Twoje fora”, „Twoja poczta”, „Ostatnio do Twoich szkół dołączyli” itd. W związku z tym strona główna musi być zawsze dynamicznie generowana, a poszczególne dane - potrzebne do jej utworzenia - są keszowane. „Używamy do tego celu systemu memcache, w którym jednak musieliśmy sami poprawić wiele błędów, a także z własnego systemu, podobnego do niego, ale opartego o rozwiązanie nkdb, w którym też kilka rzeczy zostało przez nas lepiej rozwiązanych. Jest w nim globalne LRU i nie ma problemów wynikających z osobnego keszowania dla różnych zakresów rozmiaru elementów, jak w przypadku memcache” – opowiada Paweł Olchawa.

Obecnie nasza-klasa.pl nadąża już za rosnącą liczbą odsłon. Z jednej strony jej dynamika nie jest bowiem już tak astronomiczna jak, np. rok wcześniej, z drugiej powstały profesjonalne działy administratorów i monitoringu, opisane procesy, które pozwalają skupić się na tym, co najważniejsze. „Mamy też wreszcie środki finansowe potrzebne na zakup sprzętu, które przy tego typu projektach są niebagatelne” – mówi Paweł Olchawa. „Niemniej przy 568 serwerach i 52 macierzach dyskowych, wciąż mamy problemy z brakiem pełnej dostępności. Pracujemy jednak, aby to poprawić” – dodaje. Założyciele portalu przygotowują też nowe projekty, o szczegółach nie chcą jednak na razie rozmawiać.

„Wciąż wprowadzamy nowe funkcjonalności na portalu. Jakie wprowadzimy niebawem, chciałbym, aby pozostało miłą niespodzianką. Mogę zagwarantować, że będą one przyjemnym zaskoczeniem dla użytkowników. Cały czas chcemy jednak pozostać przy naszej misji, jaką jest umożliwienie utrzymywania kontaktu i komunikacji pomiędzy znajomymi” – opowiada Paweł Olchawa.

Opisanie procesów, wprowadzanie procedur

Rozwiązania stosowane w nasza-klasa.pl:

Sprzęt: routery Cisco, przełączniki Nortel Networks, serwery i macierze HP Blade.

Oprogramowanie: haproxy (rozkład obciążeń pomiędzy serwerami php/nginx), nginx (serwer WWW), lighttpd (serwer WWW), LVS (rozkład obciążeń pomiędzy serwery haproxy), MySQL (baza danych), PHP+APC+fastcgi (generowanie strony), squid (keszowanie miniaturek zdjęć), memcache (cache dla najbardziej popularnych danych), nkdb (powiadomienia, goście), nkcache, nagios (monitorowanie), munin (wykresy), zabbix (wykresy), nkfs (zdjęcia).

Jednym z większych wyzwań dla Pawła Olchawy jest jednak obecnie reorganizacja rozrastającego się szybko działu IT, w którego skład wchodzą m.in. wspomniane wyżej działy administratorów i monitoringu, ale także rozwoju oprogramowania, infrastruktury IT, obsługi użytkownika, czy bezpieczeństwa. Ten ostatni ściśle współpracuje z policją pomagając w wyjaśnianiu wielu spraw dotyczących użytkowników portalu nasza-klasa. W zeszłym roku kontrolę w portalu nasza-klasa.pl przeprowadził Generalny Inspektor Ochrony Danych Osobowych, z którym też współpracował dział bezpieczeństwa. Efektem było wprowadzenie możliwości bezpiecznego logowania na stronę serwisu poprzez SSL, którego poziom bezpieczeństwa – jak zapewnia Paweł Olchawa - nie ustępuje poziomowi bezpieczeństwa logowania się do portali takich, jak Allegro.pl, czy Wirtualna Polska.

Porządkowane są sprawy dotyczące wszystkich działów IT, opisywane i wprowadzane procesy i procedury dotyczące różnych działań w portalu nasza-klasa.pl. Najwięcej czasu Pawłowi Olchawie zajmuje jednak dziś restrukturyzacja działu administratorów. „Pracujemy nad ścieżkami karier, szlifujemy model pracy - godziny i zasady dyżurów, budujemy dział całodobowego monitoringu, który współpracuje z działem administratorów i działem obsługi użytkownika” - opowiada. Do realizacji tego zadania zatrudniony został Project Manager.

W dziale IT nasza-klasa.pl niedawno wydzielono także stanowisko dyrektora infrastruktury IT, który jest odpowiedzialny za serwerownię, znajdujący się tam sprzęt, zamówienia, testy dostarczonych rozwiązań IT, łącza, sieć LAN i SAN oraz całą pozostałą infrastrukturę teleinformatyczną. Podlega mu też dział specjalistów infrastruktury IT (to ok. 5 osób), którzy pracują na trzy zmiany w serwerowni i zajmują się wykonywaniem m.in. takich prac, jak wymiana dysków, procesorów, czy kładzeniem okablowania.

Wszystkie zadania w dziale IT portalu nasza-klasa.pl przydzielane są i kontrolowane przy użyciu systemu JIRA. Zdefiniowane są tam procesy, jakim podlegają poszczególne rodzaje zadań. Możliwe jest śledzenie postępu poszczególnych zadań, komentowanie oraz szukanie, w których momentach harmonogram procesu jest niedotrzymywany. Dział obsługi użytkownika korzysta zaś z system OTRS i formularz do kontaktu znajdujący się na stronie serwisu nasza-klasa.pl/support.

Rozwój platformy

W 2008 r. nasza-klasa.pl dokonała znacznej inwestycji w klaster serwerów blade HP. To pozwoliło firmie znaleźć się na ubiegłorocznej, listopadowej liście największych superkomputerów TOP500. Ta infrastruktura jednak cały czas wymaga rozbudowy i będzie jej wymagać w przyszłości. Obecnie składają się na nią 52 macierze dyskowe (po 16 dysków każda) i 568 serwery. „Rośnie nam liczba użytkowników; ilość danych, jakie składujemy i serwujemy – a są to zarówno zdjęcia, jak i wiadomości, czy komentarze - oraz liczba funkcjonalności na portalu. Wszystko to przekłada się na potrzebę ciągłej rozbudowy infrastruktury” – opowiada CTO nasza-klasa.pl.

Dodatkowo nasza-klasa.pl buduje zapasowe centra danych, które składają się z kilku serwerów i dużej przestrzeni dyskowej. Gwarantują one bezpieczeństwo danych w przypadku np. wybuchu bomby w serwerowni. Stworzenie centrum, które mogłoby przejąć pracę całego portalu wymagałoby znaczącej inwestycji w budowę „lustrzanego odbicia” obecnej infrastruktury IT, a więc np. zakupu co najmniej 500 dodatkowych serwerów. „Ubezpieczamy się jednak finansowo od skutków różnych kataklizmów i zdarzeń losowych” – mówią przedstawiciele portalu nasza-klasa.pl.

W 2009 r. portal zamierza kupić 416 serwerów i 60 macierzy HP Blade. Dodatkowo, jako pierwsza firma w Polsce, nasza-klasa.pl planuje masowo wykorzystywać dyski SSD. „Pierwsze testy mamy już za sobą i rezultaty naprawdę są oszałamiające. Mamy nadzieje, że pozwoli to nam spokojnie patrzeć w przyszłość jeżeli chodzi o zaspokojenie rosnących wymagań wydajnościowych stawianych naszej infrastrukturze” – konkluduje z zadowoleniem Paweł Olchawa.

Dwa lata ewolucji IT w naszej-klasie.pl

- Wirtualny serwer w home.pl.

- Dedykowany serwer w centrum danych ATM.

- Pierwsze dedykowane serwery wynajmowane w serwerowni netdirekt.de.

- Pierwsi zatrudnieni programiści i administratorzy.

- Zatrudnienie kolejnych programistów i administratorów. W netdirekt.de firma wynajmuje już 150 serwerów.

- Migracja do serwerowni Beyond w Poznaniu, na własne serwery, początkowo kupowane od różnych dostawców.

- Zatrudnienie Project Managerów dla programistów i działu administratorów.

- Migracja na serwery HP Blade (cały czas w toku).

- Budowa działu produkcji oprogramowania, na który składają się testerzy (3 osoby), programiści PHP (9), programiści C++ (2), koderzy CSS/HTML (4), architekci aplikacji (2), graficy (4), Product Managerowie (4). Sformalizowano także i opisano cały proces wytwarzania oprogramowania, którego skutkiem jest cotygodniowe wdrażanie nowych, produkcyjnych wersji serwisu.

Źródło – nasza-klasa.pl

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200