Wydajność i skalowalność
09:00 - 10:00
Rejestracja
Mentalność "u mnie działa " jest przyczyną wielu sytuacji kryzysowych. Sytuacja staje się jeszcze bardziej napięta, gdy Twoja aplikacja jest obciążona ruchem wynikającym z intensywnej kampanii marketingowej.

Używając paru sprytnych narzędzi połączonych z niewielkimi zmianami kodu jesteś wstanie zwiększyć wydajność i poprawić skalowalność swojej aplikacji. Słowami kluczowymi w tej prezentacji będą: Varnish, PHP-FPM, Nginx, APC, CDN, Gearman, Memcached i poprawne ustawienie serwera aplikacji. Podczas tej prezentacji Thijs pokaże jak z wolnej aplikacji, z kiepskim kodem źródłowym uczynić demona prędkości nie tylko na jednym serwerze, ale na wielu serwerach. Prezentacja będzie skupiona na naprawianiu istniejących błędów w aplikacji, a przy odrobinie szczęścia nauczymy się im zapobiegać.

Thijs pracuje w przedsiębiorstwie hostingowym i często zdarza się, że obsługują wiele słabo napisanych aplikacji i stron. Często też klient po przeprowadzeniu kampanii reklamowej chce żeby aplikacja działała sprawnie i stabilnie, mimo że kod źródłowy nie jest do tego przystosowany. Narzędzia takie jak Varnish, APC i Memcached uratowały go wielokrotnie od przeciążenia aplikacji (i serwera) mimo ogromnego obciążenia.

Thijs pokaże przykład bardzo wolno działającej strony eventowej pod Wordpressa, która ulegała przeciążeniu dwa tygodnie przed wydarzeniem. Bez konieczności przepisywania ani jednego kawałka kodu udało mu się uczynić stronę bezawaryjną na bardzo słabym serwerze.
Thijs pracuje w Combell – najlepszej Belgijskiej firmie hostingowej. Wspiera wiele społeczności internetowych, ale szczególnie upodobał sobie społeczności związane z PHP. Thijs jest także członkiem zarządu PHPBenelux User Group i organizuje konferencję PHPBenelux.
Prezentacja omawia wykorzystanie elementów ekosystemu Hadoopa w różnych etapach przetwarzania danych, od generowania po stronie serwerów produkcyjnych, poprzez warstwę agregującą (Flume), warstwę składowania danych (HDFS) oraz analizy i przetwarzania Map/Reduce. W pierwszej część prezentacji wprowadzę uczestników w tematykę przetwarzania dużych zbiorów danych, skupię się na problemach, z jakimi spotykają się projektanci takich systemów. Omówiony zostanie paradygmat programowania Map/Reduce z przykładami w języku Java. Przedstawione zostaną narzędzia Pig oraz Hive, które pozwalają uzyskać dostęp do zbiorów danych o rozmiarach setek terabajtów za pomocą zwykłego SQL'a. W dalszej części, prezentacja omówię przykłady zastosowań Hadoopa do analizy tzw. large-scale data, przede wszystkim logów z aplikacji wraz z danymi pochodzącymi z baz relacyjnych.
Wojciech Langiewicz, obecnie programista Java w NK w zespole Hurtowni Danych. Na co dzień spotyka się z problemami optymalizacji systemów przetwarzających dziesiątki terabajtów dziennie.
11:50 - 12:10
Przerwa kawowa
Dużo frajdy sprawia skonstruowanie swojej aplikacji tak, aby była wstanie obsługiwać miliony odwiedzin, ale tak naprawdę nikt nie wie jakiego rodzaju ruch otrzymasz i czy będziesz miał czas tak ją skonstruować. W czasie prezentacji przejdziemy przez kilka praktycznych rozwiązań zapewniających skalowalność twojej platformy i pokażemy jak wykryć wąskie gardła w działającej platformie bądź w planowanym projekcie. Następnie Rowan pokaże jak te kroki można stosować stopniowo, aby zapewnić naszej aplikacji bezpieczny rozwój i zarządzanie bez ryzyka zawału serca i wyłysienia z nerwów w trakcie.
Rowan posiada tytuł magistra inżynierii oprogramowania i zajmuje stanowisko kierownika zespołu w Ibuildings. Przez 6 ostatnich lat zajmował się PHP, wcześniej pisał w Pythonie, Javie a także w Pascalu i BASICu. W ciągu swojej kariery zajmował się wieloma projektami, począwszy od małych interaktywnych stron internetowych po ogromne silniki bilingowe liczące miliony funtów przy wykorzystaniu wielu technologii open source. Do jego zainteresowań należy ciągłe grzebanie w swojej starzejącej się Nokii N900 i oglądanie horrorów klasy B.
Istnieje wiele rozwiązań NoSQLowych używanych przez wiele osób, jednak w pewnym momencie możecie stanąć przed decyzją, aby z nich nie skorzystać, aby uniknąć konieczności wspierania złego rozwiązania przez kolejne lata. Prezentacja ta dotyczyć będzie systemów bazodanowych i opisywać będzie, które z nich najlepiej zastosować do konkretnego przypadku.

Komentarz:

Jest wiele prezentacji na temat MongoDB, CouchDB, DynamoDB, Cassandra, etc., ale wszystkie z nich stawiają developera przed dylematem, który system wybrać. Prezentacja ta odpowie na pytanie, które rozwiązanie wybrać do konkretnego problemu.
Juozas, a dla przyjaciół Joe, jest doświadczonym i utalentowanym (jak twierdzą niektórzy) młodym specjalistą IT pracującym nad wieloma projektami webowymi. Jest także założycielem i CEO Web Species Ltd – przedsiębiorstwa tworzącego wiele aplikacji : od małych i średnich stron internetowych, a kończąc na narzędziach biznesowych. Czas wolny od pracy poświęca na zdobywanie dyplomu z dziedziny informatyki, a także pracy nad wieloma projektami open source’owymi w celu poprawienia ich funkcjonalności i niezależności od platform. Jego doświadczenie praktyczne w wielu różnych technologiach i językach programowania pozwala mu dostarczać bezstronne i praktyczne prezentacje w wielu dziedzinach IT.
13:45 - 14:45
Obiad
API typu REST jest "RESTful” tylko wtedy, gdy korzysta z hypermediów, które opisują jakie działania mogą zostać podjęte na dostępnych zasobach aby przenieść API z jednego punktu dostępowego. Prezentacja będzie dotyczyć REST, a w szczególności HATEOAS (Hypermedia As The Engine Of Application State), aby pokazać dobrą strukturę serwisu. Będziemy używać fdrop.it jako narzędzia wymiany plików i przedstawimy na przykładach jak można go użyć. Prezentacja ta jest skierowana zarówno do architektów oprogramowania jak i do starszych developerów i będzie podstawą do pisania świetnych, intuicyjnych serwisów RESTowych.
Ben zajmuje stanowisko Technical Assurance Manager w firmie Ibuildings (Sheffield). Posiada bogate doświadczenie w zakresie języków programowania takich jak C, C++, Perl, Python, a przez ostatnie 5 lat zajmował się PHP. W przeciągu swojej kariery pracował w wielu firmach z różnych sektorów rynku IT: marketing mobilny, dane, ISP i usługi zaawansowane, dzięki czemu posiada doświadczenie w wielu dziedzinach inżynierii oprogramowania. Prywatnie ojciec, a resztę wolnego czasu spędza hackując jeden ze swoich własnych projektów (mnóstwo pomysłów, zbyt mało czasu!), grając na PS3 lub blogując nieregularnie na techPortal lub na swoim własnym blogu http://nocarrier.co.uk
15:30 - 15:50
Przerwa kawowa
Od wielu lat cachowanie jest często poruszanym tematem. To coś więcej niż umieszczenie danych w cachu: odpowiednia metoda cachowania może znacznie poprawić działanie aplikacji i zmniejszyć ruch. Przyjrzymy się częstym błędom popełnianym podczas cachowania, które mogą być przyczyną wadliwego działania strony. Jeśli poszukujesz wskazówek na temat różnych technik i narzędzi do cachowania jak Memcached, Nginx i Varnish, a także rad jak wdrożyć je w efektywny sposób - ta prezentacja jest dla Ciebie. Prezentację w formie tutorialu zaczniemy od strony napisanej przy użyciu Zend Framework. Następnie dodamy cachowanie , będziemy dodawać serwery i będziemy wymieniać standardowy stos LAMP, jednocześnie monitorując wszystko na żywo.
Wim Godden jest właścicielem Cu.be Solutions – belgijskiej firmy consultingowej zajmującej się PHP i rozwiązaniami Open Source. Programowanie w PHP rozpoczął w 1996. Po stworzeniu oprogramowania reklamowego phpAdsNew (obecnie OpenX) pracował wieloma technologiami informatycznych (zaczynając od PHP, klastrów baz danych, a kończąc na infrastrukturze szkieletowej Internetu). Od 2005 jako team lead, architekt systemów/oprogramowania zajmował się tworzeniem wielu systemów CMS i CRM opartych na PHP dla wielu dużych belgijskich firm.
Puppet jest narzędziem służącym do zarządzania konfiguracją serwerów, które jest łatwe we wdrożeniu i w konfiguracji nie tylko na jednym, ale także na tysiącach serwerów (a czasem nawet jeszcze na większej liczbie). Mimo iż dla devopsów nie jest on niczym nowym to przez zwykłych developerów jest wciąż uważany za dziwne oprogramowanie. Jak to działa i w jaki sposób mogą go używać developerzy? Prezentacja ta traktuje o „drugiej” stronie web developerki: faktycznego wdrożenia twojego oprogramowania. Nie jest trudno zaimplementować VPS w firmie cloud hostingowej, ale jeśli chodzi o zarządzanie systemami trzeba wziąć pod uwagę wiele rzeczy. Prezentacja ta nie będzie opowiadać stricte o metodologii „devops”, ale pokaże jak narzędzia takie jak Puppet, Vagrant, Veewee etc. mogą usprawnić development i wdrożenia.
Joshua Thijssen jest developerem-freelancerem, konsultantem i trenerem. Jego codzienna praca składa się z utrzymania kodu, pracy nad wieloma różnymi projektami i pomaganiu innym w osiągnieciu coraz wyższych umiejętności w kodowaniu i myśleniu technicznym. Posiada certyfikaty Zend PHP5, PHP5.3, Zend Framework, LPIC1, LPIC2, Ubuntu, MySQL DBE & MySQL DBA. Jego zainteresowania to złożone i wysokiej klasy systemy internetowe i klastry, optymalizacja kodu, administrowanie serwerami i ich modernizacja. Skalowalność jest bardzo ważnym aspektem, szczególnie w tworzeniu stron internetowych. Oprócz pracy w sektorze IT jest zapalonym instruktorem nurkowania w trzech różnych organizacjach. Jego ulubioną formą spędzania czasu pod wodą jest nurkowanie w starych wrakach statków, nurkowanie techniczne i podwodna fotografia, oprócz tego prowadzi swojego bloga: http://www.adayinthelifeof.nl. Więcej informacji można znaleźć na : http://www.adayinthelifeof.nl/category/talks/ albo na stronie joind.in : http://joind.in/user/view/1678
17:25 - 17:35
Zakończenie konferencji – losowanie nagród