SlideShare une entreprise Scribd logo
1  sur  26
IT od kuchni w Nokaut.pl



Tadeusz Magiera, Marcin Grzybowski, Sławomir
     Pawęska, Przemysław Wróblewski
Nokaut.pl w liczbach
- 12 mln ofert
- ponad 100 mln zdjęć
- 400GB danych w MySQL
- największa tabela ponad 200 mln rekordów
- 3 mln req/dzień po kontent dynamiczny
- 20 mln req/dzień po kontent statyczny
- RAM: 816GB, dyski: 51.03TB, 172 rdzenie
CPU (bez HT)
Ludzie
już nie startup..
Działy
   Działy projektowe


        Dział
      Frontendu
                          25+ osób
        Dział
      Backendu

                         Działy utrzymania/małych projektów



        Dział             Dział                        Dział
       Aplikacji       Utrzymania                  Administratorów
      Mobilnych
Rozwój
● Regularne spotkania wewnętrzne o
  Technologiach IT i Jakości IT
● Cykl szkoleń wewnętrznych
● Szkolenia otwarte (Andrzej Krzywda o RoR)
● Konferencje (Front-Trends, RuPy, EuRuKo i
  jak zawsze polecam trójmiejskie infoShare)
● Firmowa biblioteczka
Procesy
Jakość
● Testy jednostkowe
● Inspekcje kodu (oswajamy się)
● Testy wydajnościowe Jmeter
● Testy funkcjonalne Selenium
● Narzędzia Continous Integration
  CruiseControl i TeamCity
● Standardy kodowania
● Post-commit hooki wyłapujące błędy
  składniowe i niezgodność ze standardami
Proces zmian na produkcji
● Serwery deweloperskie             dane
                                    deweloperskie
● Serwery testowe                   dane
  ○ dostępne dla wszystkich         deweloperskie
                                    lub produkcyjne
     programistów


● Serwer przedprodukcyjny /         dane i
                                    konfiguracja
  Serwer 1%                         produkcyjna

● Serwery produkcyjne
  ○ proces komunikacji o zmianach
● Do obsługi bugów wykorzystujemy Bugzilli
● Proces projektowy wspiera Acunote
  (Scrumowy) i Wrike (harmonogramy)
Technologie
Środowiska wytwarzania
Narzędzia deweloperskie
● RubyMine, PhpStorm to edytory które
  coraz bardziej lubimy
● ErrBit do zbierania błędów
● Rsyslog do centralnego logowania i
  agregowania logów
● Webistrano/Capistrano do deployu kodu
Infrastruktura
● Beyond główna serwerownia, 30+
  serwerów 1U (HP DL160G6), sieć 1 Gbit,
  VLan-y
● Hetzner dodatkowe serwery mające
  mniejszy priorytet
● Amazon S3 przechowuje kontent statyczny
  (~2 TB danych), serwowanie z warstwą
  keszującą w Beyond
Infrastruktura
Wirtualizacja
● Linux VServer na wszystkich maszyny
  Linuksowych
● KVM do wirtualizowania pozostałych
  systemów
Sposób obsługi WWW
●   LoadBalancing na HaProxy
●   Failovery przez HeartBeata
●   Nginx + PHP-FPM do serwowania PHP
●   Varnish + Nginx do kontentu statycznego
Technologie WWW
●   Memcache, MemcacheDB do keszowania
●   MySQL, MongoDB jako storage
●   PostgreSQL do transakcji
●   ActiveMQ do kolejek
●   SOLR do wyszukiwania
Technologie backendowe
● Ruby, Railsy, gearman do starszych aplikacji
● JRuby + TorqueBox wraz ze udostępnianymi przez
    JBoss-a usługami do nowo tworzonych rozwiązań
●   MySQL, Memcache wspomagająco
●   MongoDB
Monitoring
      ● Zabbix system do monitoringu -
        kontrola 2000+ wskaźników pracy
        serwerów i aplikacji rozbudowana o
        1000+ triggerów reagujących na
        przekroczenie zdefiniowanych
        wartości progowych.

      ● Host-tracker, Watchscript
        dostępność podstawowych stron
        wszystkich utrzymywanych
        serwisów
Co czytamy?
         Clean Code to pozycja która
         powinna być obowiązkowa na
         studiach :)



         High Performance MySQL czyli
         po prostu biblia MySQL dla tych
         którzy operują na sporej ilości
         danych
Kilka wyborów technologicznych
● SSD vs HDD Enterprise vs HDD Desktop
● Blade vs Rack
● SVN vs GIT

Contenu connexe

Tendances

PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PROIDEA
 
Info meet pomiary wydajności
Info meet pomiary wydajnościInfo meet pomiary wydajności
Info meet pomiary wydajnościmagda3695
 
LXC - kontener pingwinów
LXC - kontener pingwinówLXC - kontener pingwinów
LXC - kontener pingwinówgnosek
 
Halokwadrat PLNOG - Freeswitch a big boys Softswitch
Halokwadrat PLNOG - Freeswitch a big boys SoftswitchHalokwadrat PLNOG - Freeswitch a big boys Softswitch
Halokwadrat PLNOG - Freeswitch a big boys Softswitchmichalpodoski
 
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeinfoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeInfoshare
 
PLNOG14: Ceph w praktyce - Paweł Stefański
PLNOG14: Ceph w praktyce - Paweł StefańskiPLNOG14: Ceph w praktyce - Paweł Stefański
PLNOG14: Ceph w praktyce - Paweł StefańskiPROIDEA
 
Net core (dawniej 5.0) – co to dla mnie. też dużo o open source
Net core (dawniej   5.0) – co to dla mnie. też dużo o open sourceNet core (dawniej   5.0) – co to dla mnie. też dużo o open source
Net core (dawniej 5.0) – co to dla mnie. też dużo o open sourceTomasz Kopacz
 
Tomasz Paszkowski - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...
Tomasz Paszkowski  - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...Tomasz Paszkowski  - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...
Tomasz Paszkowski - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...PROIDEA
 
Architektura serwera gier online
Architektura serwera gier onlineArchitektura serwera gier online
Architektura serwera gier onlineMaciej Mróz
 
Exchange 2013 sp1 - what's new
Exchange 2013 sp1 - what's newExchange 2013 sp1 - what's new
Exchange 2013 sp1 - what's newKonrad Sagala
 

Tendances (14)

PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
PLNOG 4: Krzysztof Góźdź - Od ssh do batuty - czyli jak z administratora stać...
 
Barcamp 08/06/2010
Barcamp 08/06/2010Barcamp 08/06/2010
Barcamp 08/06/2010
 
Info meet pomiary wydajności
Info meet pomiary wydajnościInfo meet pomiary wydajności
Info meet pomiary wydajności
 
LXC - kontener pingwinów
LXC - kontener pingwinówLXC - kontener pingwinów
LXC - kontener pingwinów
 
Halokwadrat PLNOG - Freeswitch a big boys Softswitch
Halokwadrat PLNOG - Freeswitch a big boys SoftswitchHalokwadrat PLNOG - Freeswitch a big boys Softswitch
Halokwadrat PLNOG - Freeswitch a big boys Softswitch
 
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurzeinfoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
infoShare AI Roadshow 2018 - Michał Ćwiok (Clouds on Mars) - Usługi AI w chmurze
 
PLNOG14: Ceph w praktyce - Paweł Stefański
PLNOG14: Ceph w praktyce - Paweł StefańskiPLNOG14: Ceph w praktyce - Paweł Stefański
PLNOG14: Ceph w praktyce - Paweł Stefański
 
Net core (dawniej 5.0) – co to dla mnie. też dużo o open source
Net core (dawniej   5.0) – co to dla mnie. też dużo o open sourceNet core (dawniej   5.0) – co to dla mnie. też dużo o open source
Net core (dawniej 5.0) – co to dla mnie. też dużo o open source
 
Tomasz Paszkowski - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...
Tomasz Paszkowski  - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...Tomasz Paszkowski  - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...
Tomasz Paszkowski - Loadbalancing ruchu HTTP w sieciach dostawców treści na ...
 
Web Cache
Web CacheWeb Cache
Web Cache
 
GlusterFS
GlusterFSGlusterFS
GlusterFS
 
Monitoring sieci
Monitoring sieciMonitoring sieci
Monitoring sieci
 
Architektura serwera gier online
Architektura serwera gier onlineArchitektura serwera gier online
Architektura serwera gier online
 
Exchange 2013 sp1 - what's new
Exchange 2013 sp1 - what's newExchange 2013 sp1 - what's new
Exchange 2013 sp1 - what's new
 

En vedette

Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.
Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.
Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.3camp
 
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard Migracja bazy danych Oracle z wersji Enterprise do wersji Standard
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard 3camp
 
Going global from Eastern Europe
Going global from Eastern EuropeGoing global from Eastern Europe
Going global from Eastern Europe3camp
 
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...3camp
 
Kampania produktu kredytowego
Kampania produktu kredytowegoKampania produktu kredytowego
Kampania produktu kredytowego3camp
 
Od pyzy do dietetycznej franczyzy
Od pyzy do dietetycznej franczyzyOd pyzy do dietetycznej franczyzy
Od pyzy do dietetycznej franczyzy3camp
 
Ivo-Software
Ivo-SoftwareIvo-Software
Ivo-Software3camp
 
Dlaczego nalezy rozmawiac z konkurencja
Dlaczego nalezy rozmawiac z konkurencjaDlaczego nalezy rozmawiac z konkurencja
Dlaczego nalezy rozmawiac z konkurencja3camp
 
Wizaz.Pl Babski Marketing
Wizaz.Pl Babski MarketingWizaz.Pl Babski Marketing
Wizaz.Pl Babski Marketing3camp
 
Drobee.com
Drobee.comDrobee.com
Drobee.com3camp
 
Biznes W 140 znakach
Biznes W 140 znakachBiznes W 140 znakach
Biznes W 140 znakach3camp
 
Bazy danych-podejście praktyczne
Bazy danych-podejście praktyczneBazy danych-podejście praktyczne
Bazy danych-podejście praktyczne3camp
 
Ututi
UtutiUtuti
Ututi3camp
 
Better be a pirate than join the navy?
 Better be a pirate than join the navy? Better be a pirate than join the navy?
Better be a pirate than join the navy?3camp
 
Osiąganie mądrej architektury z Symfony2
Osiąganie mądrej architektury z Symfony2 Osiąganie mądrej architektury z Symfony2
Osiąganie mądrej architektury z Symfony2 3camp
 
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future33camp
 
Gra no damage no fun
Gra no damage no funGra no damage no fun
Gra no damage no fun3camp
 
Prezentacja firmy Acxiom podczas II edycji Future3
Prezentacja firmy Acxiom podczas II edycji Future3Prezentacja firmy Acxiom podczas II edycji Future3
Prezentacja firmy Acxiom podczas II edycji Future33camp
 
Prezentacja Gdańskiego Parku Naukowo-Technologicznego
Prezentacja Gdańskiego Parku Naukowo-Technologicznego Prezentacja Gdańskiego Parku Naukowo-Technologicznego
Prezentacja Gdańskiego Parku Naukowo-Technologicznego 3camp
 
Marketing polityczny
Marketing politycznyMarketing polityczny
Marketing polityczny3camp
 

En vedette (20)

Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.
Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.
Inwestowanie w technologie mobilne z punktu widzenia funduszu VC.
 
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard Migracja bazy danych Oracle z wersji Enterprise do wersji Standard
Migracja bazy danych Oracle z wersji Enterprise do wersji Standard
 
Going global from Eastern Europe
Going global from Eastern EuropeGoing global from Eastern Europe
Going global from Eastern Europe
 
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...
Gdy wizja zderza się z rzeczywistością, czyli o nielubianym zarządzaniu w sta...
 
Kampania produktu kredytowego
Kampania produktu kredytowegoKampania produktu kredytowego
Kampania produktu kredytowego
 
Od pyzy do dietetycznej franczyzy
Od pyzy do dietetycznej franczyzyOd pyzy do dietetycznej franczyzy
Od pyzy do dietetycznej franczyzy
 
Ivo-Software
Ivo-SoftwareIvo-Software
Ivo-Software
 
Dlaczego nalezy rozmawiac z konkurencja
Dlaczego nalezy rozmawiac z konkurencjaDlaczego nalezy rozmawiac z konkurencja
Dlaczego nalezy rozmawiac z konkurencja
 
Wizaz.Pl Babski Marketing
Wizaz.Pl Babski MarketingWizaz.Pl Babski Marketing
Wizaz.Pl Babski Marketing
 
Drobee.com
Drobee.comDrobee.com
Drobee.com
 
Biznes W 140 znakach
Biznes W 140 znakachBiznes W 140 znakach
Biznes W 140 znakach
 
Bazy danych-podejście praktyczne
Bazy danych-podejście praktyczneBazy danych-podejście praktyczne
Bazy danych-podejście praktyczne
 
Ututi
UtutiUtuti
Ututi
 
Better be a pirate than join the navy?
 Better be a pirate than join the navy? Better be a pirate than join the navy?
Better be a pirate than join the navy?
 
Osiąganie mądrej architektury z Symfony2
Osiąganie mądrej architektury z Symfony2 Osiąganie mądrej architektury z Symfony2
Osiąganie mądrej architektury z Symfony2
 
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3
Prezentacja firmy Lufthansa Systems Poland podczas II edycji Future3
 
Gra no damage no fun
Gra no damage no funGra no damage no fun
Gra no damage no fun
 
Prezentacja firmy Acxiom podczas II edycji Future3
Prezentacja firmy Acxiom podczas II edycji Future3Prezentacja firmy Acxiom podczas II edycji Future3
Prezentacja firmy Acxiom podczas II edycji Future3
 
Prezentacja Gdańskiego Parku Naukowo-Technologicznego
Prezentacja Gdańskiego Parku Naukowo-Technologicznego Prezentacja Gdańskiego Parku Naukowo-Technologicznego
Prezentacja Gdańskiego Parku Naukowo-Technologicznego
 
Marketing polityczny
Marketing politycznyMarketing polityczny
Marketing polityczny
 

Similaire à IT od kuchni w Nokaut.pl

[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro
[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro
[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegroallegro.tech
 
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Mateusz Paprocki, PMP
 
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...PROIDEA
 
Cometari Dedicated Solutions Oferta ogólna
Cometari Dedicated Solutions Oferta ogólnaCometari Dedicated Solutions Oferta ogólna
Cometari Dedicated Solutions Oferta ogólnaJakub Hajek
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Cloudskraqa
 
PLNOG 3: Tomasz Paszkowski Wysokowydajny system składowania plików graficzny...
PLNOG 3: Tomasz Paszkowski  Wysokowydajny system składowania plików graficzny...PLNOG 3: Tomasz Paszkowski  Wysokowydajny system składowania plików graficzny...
PLNOG 3: Tomasz Paszkowski Wysokowydajny system składowania plików graficzny...PROIDEA
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...Michal Furmankiewicz
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITamarekmisztal
 
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowej
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowejMateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowej
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowejPROIDEA
 
Produkcja aplikacji internetowych
Produkcja aplikacji internetowychProdukcja aplikacji internetowych
Produkcja aplikacji internetowychTomasz Borowski
 
Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Semihalf
 
Jak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITJak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITGOG.com dev team
 
DATA CENTER CONVERGED 2012 WARSAW
DATA CENTER CONVERGED 2012 WARSAWDATA CENTER CONVERGED 2012 WARSAW
DATA CENTER CONVERGED 2012 WARSAWPawel Wawrzyniak
 
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami PROIDEA
 
[#2] architektura - IBM Integrated Analytics System
[#2] architektura - IBM Integrated Analytics System[#2] architektura - IBM Integrated Analytics System
[#2] architektura - IBM Integrated Analytics SystemArtur Wronski
 
Aplikacje internetowe (2010)
Aplikacje internetowe (2010)Aplikacje internetowe (2010)
Aplikacje internetowe (2010)Adrian Kalbarczyk
 
Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Divante
 
[#4] spark - IBM Integrated Analytics System
[#4] spark - IBM Integrated Analytics System[#4] spark - IBM Integrated Analytics System
[#4] spark - IBM Integrated Analytics SystemArtur Wronski
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyqbeuek
 

Similaire à IT od kuchni w Nokaut.pl (20)

[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro
[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro
[WHUG] Wielki brat patrzy - czyli jak zbieramy dane o użytkownikach allegro
 
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
Jak oszczędzać czas zespołu w środowisku mikroserwisów, czyli efektywny flow ...
 
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...
PLNOG16: Nowe założenia dla zbieranie logów, statystyk i alertów, Maciej Kałk...
 
Cometari Dedicated Solutions Oferta ogólna
Cometari Dedicated Solutions Oferta ogólnaCometari Dedicated Solutions Oferta ogólna
Cometari Dedicated Solutions Oferta ogólna
 
Michał Dec - Quality in Clouds
Michał Dec - Quality in CloudsMichał Dec - Quality in Clouds
Michał Dec - Quality in Clouds
 
PLNOG 3: Tomasz Paszkowski Wysokowydajny system składowania plików graficzny...
PLNOG 3: Tomasz Paszkowski  Wysokowydajny system składowania plików graficzny...PLNOG 3: Tomasz Paszkowski  Wysokowydajny system składowania plików graficzny...
PLNOG 3: Tomasz Paszkowski Wysokowydajny system składowania plików graficzny...
 
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...GET.NET -  Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
GET.NET - Osiołkowi w żłobie dano, czyli o tym jak hostować aplikacje na Mic...
 
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITaWersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
Wersjonowanie kodu. Dobre praktyki na przykładzie przejścia z CVS na GITa
 
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowej
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowejMateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowej
Mateusz Gajewski - Architektura Allegro - 4 lata po rewolucji mikrousługowej
 
Produkcja aplikacji internetowych
Produkcja aplikacji internetowychProdukcja aplikacji internetowych
Produkcja aplikacji internetowych
 
Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.Stosy sieciowe w przestrzeni użytkownika.
Stosy sieciowe w przestrzeni użytkownika.
 
Jak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com ITJak wydaliśmy wiedźmina, GOG.com IT
Jak wydaliśmy wiedźmina, GOG.com IT
 
DATA CENTER CONVERGED 2012 WARSAW
DATA CENTER CONVERGED 2012 WARSAWDATA CENTER CONVERGED 2012 WARSAW
DATA CENTER CONVERGED 2012 WARSAW
 
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami
PLNOG 8: Maciej Kubat - Nowe możliwości w zarządzaniu sieciami
 
[#2] architektura - IBM Integrated Analytics System
[#2] architektura - IBM Integrated Analytics System[#2] architektura - IBM Integrated Analytics System
[#2] architektura - IBM Integrated Analytics System
 
Aplikacje internetowe (2010)
Aplikacje internetowe (2010)Aplikacje internetowe (2010)
Aplikacje internetowe (2010)
 
Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13Skalowalność Magento - MMPL13
Skalowalność Magento - MMPL13
 
MongoDB 2011
MongoDB 2011MongoDB 2011
MongoDB 2011
 
[#4] spark - IBM Integrated Analytics System
[#4] spark - IBM Integrated Analytics System[#4] spark - IBM Integrated Analytics System
[#4] spark - IBM Integrated Analytics System
 
Jak stworzyć udany system informatyczny
Jak stworzyć udany system informatycznyJak stworzyć udany system informatyczny
Jak stworzyć udany system informatyczny
 

Plus de 3camp

Ochrona podatnych webaplikacji za pomocą wirtualnych poprawek
Ochrona podatnych webaplikacji za pomocą wirtualnych poprawekOchrona podatnych webaplikacji za pomocą wirtualnych poprawek
Ochrona podatnych webaplikacji za pomocą wirtualnych poprawek3camp
 
HTTPS bez wymówek
HTTPS bez wymówekHTTPS bez wymówek
HTTPS bez wymówek3camp
 
Jak udokumentować bazę danych
Jak udokumentować bazę danychJak udokumentować bazę danych
Jak udokumentować bazę danych3camp
 
ORM - tuningujemy podejście do mapowania
ORM - tuningujemy podejście do mapowaniaORM - tuningujemy podejście do mapowania
ORM - tuningujemy podejście do mapowania3camp
 
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.3camp
 
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...3camp
 
Wykorzystanie języka Kotlin do aplikacji na platformie Android
Wykorzystanie języka Kotlin do aplikacji na platformie AndroidWykorzystanie języka Kotlin do aplikacji na platformie Android
Wykorzystanie języka Kotlin do aplikacji na platformie Android3camp
 
Learn you some rx for the greater good
Learn you some rx for the greater goodLearn you some rx for the greater good
Learn you some rx for the greater good3camp
 
Google App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjachGoogle App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjach3camp
 
Reakcja łańcuchowa, czyli React.js w praktyce
Reakcja łańcuchowa, czyli React.js w praktyceReakcja łańcuchowa, czyli React.js w praktyce
Reakcja łańcuchowa, czyli React.js w praktyce3camp
 
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”3camp
 
AngularJS (nie) nadaje się do dużego projektu
AngularJS (nie) nadaje się do dużego projektuAngularJS (nie) nadaje się do dużego projektu
AngularJS (nie) nadaje się do dużego projektu3camp
 
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...3camp
 
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?3camp
 
Artur Senk, OKE Poland, Big Data na zakupach
Artur Senk, OKE Poland, Big Data na zakupachArtur Senk, OKE Poland, Big Data na zakupach
Artur Senk, OKE Poland, Big Data na zakupach3camp
 
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...3camp
 
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnieMarcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie3camp
 
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...3camp
 
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...3camp
 
Marcin Szeląg, InnovationNest, Startup Risk Model
Marcin Szeląg, InnovationNest, Startup Risk ModelMarcin Szeląg, InnovationNest, Startup Risk Model
Marcin Szeląg, InnovationNest, Startup Risk Model3camp
 

Plus de 3camp (20)

Ochrona podatnych webaplikacji za pomocą wirtualnych poprawek
Ochrona podatnych webaplikacji za pomocą wirtualnych poprawekOchrona podatnych webaplikacji za pomocą wirtualnych poprawek
Ochrona podatnych webaplikacji za pomocą wirtualnych poprawek
 
HTTPS bez wymówek
HTTPS bez wymówekHTTPS bez wymówek
HTTPS bez wymówek
 
Jak udokumentować bazę danych
Jak udokumentować bazę danychJak udokumentować bazę danych
Jak udokumentować bazę danych
 
ORM - tuningujemy podejście do mapowania
ORM - tuningujemy podejście do mapowaniaORM - tuningujemy podejście do mapowania
ORM - tuningujemy podejście do mapowania
 
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.
No pressure, no diamonds. Rzecz o łamaniu zasad w projektach.
 
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...
W poszukiwaniu procesu doskonałego. Wdrożenie Scruma, Continuous Integrations...
 
Wykorzystanie języka Kotlin do aplikacji na platformie Android
Wykorzystanie języka Kotlin do aplikacji na platformie AndroidWykorzystanie języka Kotlin do aplikacji na platformie Android
Wykorzystanie języka Kotlin do aplikacji na platformie Android
 
Learn you some rx for the greater good
Learn you some rx for the greater goodLearn you some rx for the greater good
Learn you some rx for the greater good
 
Google App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjachGoogle App Engine i Google Play Services w Twoich aplikacjach
Google App Engine i Google Play Services w Twoich aplikacjach
 
Reakcja łańcuchowa, czyli React.js w praktyce
Reakcja łańcuchowa, czyli React.js w praktyceReakcja łańcuchowa, czyli React.js w praktyce
Reakcja łańcuchowa, czyli React.js w praktyce
 
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”
Odtwarzanie multimediów w HTML5, czyli Player przez duże „P”
 
AngularJS (nie) nadaje się do dużego projektu
AngularJS (nie) nadaje się do dużego projektuAngularJS (nie) nadaje się do dużego projektu
AngularJS (nie) nadaje się do dużego projektu
 
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...
Przemysław Bartkowiak - Sam ustalasz ile za to zapłacisz – czyli nowy wymiar ...
 
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?
Mirek Wąsowicz - Segment jednego, dokąd zmierza marketing online?
 
Artur Senk, OKE Poland, Big Data na zakupach
Artur Senk, OKE Poland, Big Data na zakupachArtur Senk, OKE Poland, Big Data na zakupach
Artur Senk, OKE Poland, Big Data na zakupach
 
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...
Piotr Macuk, Konfeo.com, Programista i biznes – plusy i minusy własnej działa...
 
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnieMarcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
Marcin Maj, Kainos - QA – wartko, zmiennie i interdyscyplinarnie
 
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...
Jak przesiąść się na rower na dwóch kółkach? Od trzyosobowego startupu do spó...
 
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...
Łukasz Brzeziński - Jak zarabiać z Wikingami? Czyli monetyzacja portalu inter...
 
Marcin Szeląg, InnovationNest, Startup Risk Model
Marcin Szeląg, InnovationNest, Startup Risk ModelMarcin Szeląg, InnovationNest, Startup Risk Model
Marcin Szeląg, InnovationNest, Startup Risk Model
 

IT od kuchni w Nokaut.pl

  • 1. IT od kuchni w Nokaut.pl Tadeusz Magiera, Marcin Grzybowski, Sławomir Pawęska, Przemysław Wróblewski
  • 3. - 12 mln ofert - ponad 100 mln zdjęć - 400GB danych w MySQL - największa tabela ponad 200 mln rekordów - 3 mln req/dzień po kontent dynamiczny - 20 mln req/dzień po kontent statyczny - RAM: 816GB, dyski: 51.03TB, 172 rdzenie CPU (bez HT)
  • 6. Działy Działy projektowe Dział Frontendu 25+ osób Dział Backendu Działy utrzymania/małych projektów Dział Dział Dział Aplikacji Utrzymania Administratorów Mobilnych
  • 7. Rozwój ● Regularne spotkania wewnętrzne o Technologiach IT i Jakości IT ● Cykl szkoleń wewnętrznych ● Szkolenia otwarte (Andrzej Krzywda o RoR) ● Konferencje (Front-Trends, RuPy, EuRuKo i jak zawsze polecam trójmiejskie infoShare) ● Firmowa biblioteczka
  • 9.
  • 10. Jakość ● Testy jednostkowe ● Inspekcje kodu (oswajamy się) ● Testy wydajnościowe Jmeter ● Testy funkcjonalne Selenium ● Narzędzia Continous Integration CruiseControl i TeamCity ● Standardy kodowania ● Post-commit hooki wyłapujące błędy składniowe i niezgodność ze standardami
  • 11. Proces zmian na produkcji ● Serwery deweloperskie dane deweloperskie ● Serwery testowe dane ○ dostępne dla wszystkich deweloperskie lub produkcyjne programistów ● Serwer przedprodukcyjny / dane i konfiguracja Serwer 1% produkcyjna ● Serwery produkcyjne ○ proces komunikacji o zmianach
  • 12. ● Do obsługi bugów wykorzystujemy Bugzilli ● Proces projektowy wspiera Acunote (Scrumowy) i Wrike (harmonogramy)
  • 14.
  • 16. Narzędzia deweloperskie ● RubyMine, PhpStorm to edytory które coraz bardziej lubimy ● ErrBit do zbierania błędów ● Rsyslog do centralnego logowania i agregowania logów ● Webistrano/Capistrano do deployu kodu
  • 17.
  • 18. Infrastruktura ● Beyond główna serwerownia, 30+ serwerów 1U (HP DL160G6), sieć 1 Gbit, VLan-y ● Hetzner dodatkowe serwery mające mniejszy priorytet ● Amazon S3 przechowuje kontent statyczny (~2 TB danych), serwowanie z warstwą keszującą w Beyond
  • 19. Infrastruktura Wirtualizacja ● Linux VServer na wszystkich maszyny Linuksowych ● KVM do wirtualizowania pozostałych systemów
  • 20.
  • 21. Sposób obsługi WWW ● LoadBalancing na HaProxy ● Failovery przez HeartBeata ● Nginx + PHP-FPM do serwowania PHP ● Varnish + Nginx do kontentu statycznego
  • 22. Technologie WWW ● Memcache, MemcacheDB do keszowania ● MySQL, MongoDB jako storage ● PostgreSQL do transakcji ● ActiveMQ do kolejek ● SOLR do wyszukiwania
  • 23. Technologie backendowe ● Ruby, Railsy, gearman do starszych aplikacji ● JRuby + TorqueBox wraz ze udostępnianymi przez JBoss-a usługami do nowo tworzonych rozwiązań ● MySQL, Memcache wspomagająco ● MongoDB
  • 24. Monitoring ● Zabbix system do monitoringu - kontrola 2000+ wskaźników pracy serwerów i aplikacji rozbudowana o 1000+ triggerów reagujących na przekroczenie zdefiniowanych wartości progowych. ● Host-tracker, Watchscript dostępność podstawowych stron wszystkich utrzymywanych serwisów
  • 25. Co czytamy? Clean Code to pozycja która powinna być obowiązkowa na studiach :) High Performance MySQL czyli po prostu biblia MySQL dla tych którzy operują na sporej ilości danych
  • 26. Kilka wyborów technologicznych ● SSD vs HDD Enterprise vs HDD Desktop ● Blade vs Rack ● SVN vs GIT