Vi har uppmärksammat att vi får en del trafik från google där man söker efter hur vår plattform är uppbyggd. Med det som bakgrund så tänkte jag försöka summera ihop vår nuvarande plattform för dom som är tekniskt intresserade.
Hårdvara
Vi har en egenutvecklad plattform som är uppdelad i mindre moduler, där varje modul går att köra fristående från vilket datacenter som helst.
Primärt driver vi våra egna servrar som står i Availos datorhallar. Vi använder även Amazon EC2 där vi startar upp ytterligare moduler för redundans och inför större evenemang.
Bandbredd
Vi är vår egen internetoperatör med AS-nummer. Vi köper bandbredd från 2 olika operatörer och har en kapacitet på 3 Gbit. Kapaciteten kan vi med enkelhet skala till 40-50 Gbit med hjälp av våra flexibla moduler.
Grunden
I botten på alla servrar har vi idag Ubuntu. Vi migrerade nyligen alla våra maskiner från Gentoo Linux för att få bättre kompabilitet med vårt automatiseringsverktyg Chef som även det ligger i botten på varje server.
Admin/Frontend
Våra kunders grafiska gränssnitt är byggt med ett ramverk som heter Ruby On Rails och drivs med hjälp av Unicorn & Nginx.
Lagring
Idag lagrar vi alla videos & filmer i ett skalbart SAN, men en ny lösning som bygger på samma moduluppbyggnad som resten av vårt system är under utveckling och kommer att vara klart till vår skarpa lansering. Resterande data sparas med hjälp av PostgreSQL.
Edge-noder / Streaming
För att kunna leverera video och liveströmmar så krävs det så klart moduler & noder som hanterar detta. På våra edge-noder så använder vi en kombination av Nginx & Wowza Media Server med ett flertal egenutvecklade moduler för att hantera skalning och säkerhet. Wowza är för övrigt den enda kommersiella produkten vi använder i vår plattform.
Övervakning / Trending
Alla våra system övervakas med hjälp av Nagios med ett grafiskt GUI som heter Thruk.
För att hålla ordning på trender och förändringar så använder vi ett verktyg som heter Graphite i kombination med Etsy’s statsd.
Övriga system/verktyg
För support/ärendehantering använder vi Zendesk och så klart telefon, Twitter och Facebook. För internkommunikation använder vi e-post & Flowdock.
Vi använder git och github för versionshantering och Pivotaltracker för bugghantering och planering. Och jag får ju så klart inte glömma WordPress för hemsidan/bloggen.
Jag tror att jag har fått med dom flesta av de system/verktyg vi använder. Om du har några frågor, funderingar eller tips så får du gärna lämna en kommentar.