Öppen källkod betalar sig för PayPal!
När Scott Thomson lämnade Visa för att ta jobbet som CTO på PayPal blev han överraskad av hur de drev sitt datacenter. "Vänta lite här", sa han. "kör de ett betalningssystem på Linux?"
”Jag var rätt bekant med betalningsystem och system för global handel men när jag kom hit bara skakade jag på huvudet”, säger Thompson. Efter att ha jobbat mestadels med IBM mainframes och Sun Solaris verkade sättet de bedrev PayPal på väldigt annorlunda, speciellt för ett företag vars hela affärsidé handlar om att hantera pengar. PayPal körs på tusentals Linux-baserade rackservers som hanterar hela PayPals presentationslager, mellanprogramvara och användargränssnitt. Thompson säger att han såg snabbt kostnadsfördelarna och ekonomin i att använda öppen källkod och Linuxteknologi. I efterhand ser han inga andra alternativ.
”När du köper stora, stora servrar som jag gjorde på mina förra arbetsplatser kunde det kosta två till tre miljoner dollar varje gång vi behövde uppgradera. Du var tvungen att köpa större servers för att vara skalbar”, säger han. ”Här på PayPal köper vi istället in tio stycken no-name servrar för tusen dollar styck och slänger in dom i serverparken och så fortsätter vi. Det är oerhört kostnadseffektivt.”
Ekonomiskt och felsäkert på samma gång
”Den modellen skapar också en väldigt felsäker lösning”, säger Matthew Mengerink, vice-vd PayPal core-technologies, som skapade arkitekturen från scratch. ”Istället för att ha en monolitisk nod eller ett oigenomträngligt fort som aldrig går sönder så har vi helt enkelt så många noder att ett datorhaveri inte är relevant”, säger Mengerink. ”Att använda ett propietärt operativsystem som innehåller tusentals möjliga felkällor skulle inte vara ett alternativ”, fortsätter han. ”Det här distribuerade, väldigt redundanta systemet vi har är tack vare Linux och Intel” tillägger han.
Allokera resurser allt eftersom de behövs
Den distribuerade modellen låter också företaget flytta runt resurser efter hand som behovet finns. Exempelvis körs en betalnings-batch, varje natt klockan 1 där ett antal servrar deltar. ”Vi plockar aldrig ner sajten”, säger han. ”Vi allokerar bara mer datakraft till servrarna som kör batch-processerna och bearbetar all data på tre timmar varje natt”
Alla de tusentals servrar som frontar kunderna pratar med ett fåtal Solaris-maskiner som kör en Oracle-databas som lagrar all kundinformation. Ett egenutvecklat API tar hand om databasanslutningarna mellan mellanprogramvaran och databaserna. ”Att öppna och stänga databasanslutningar går blixtsnabbt”, säger Mengerink. ”Så vi har ett lager med öppna databasanslutningar som buffras mellan webb och databas. Applikationerna bryr sig inte om att de pratar via ett API utan de tror att de arbetar direkt mot databasen och databasen å sin sida upplever inte mängden med sessioner som ett orosmoment utan tror att den har ett fåtal ständigt uppkopplade sessioner”
Öppen källkod betalar sig i utvecklingslabbet
Att använda öppen källkod som RedHat skapar ett flertal fördelar för utvecklarna. Eftersom både hård och mjukvara inte är speciellt dyrt har utvecklarna en hel replika av det riktiga systemet i en utvecklingsmiljö. Det låter utvecklarna skriva nya versioner och insticksmoduler till PayPals driftsmiljö och sedan aktivera dom utan problem.
Utvecklare är radikala
”En ständig kamp vi utkämpar här är en klassisk dragkamp mellan utvecklare och ledning. Utvecklare är radikala. De kör alltid på den senaste betan och kernel-patchar som de hittat på någon universitetssajt”, säger han. ”Folket i ledningen är lite mer konservativa än så. De anser att ingen ska känna sig sårad om vi istället använder oss av stabila och beprövade versioner” Linux-servrarna i PayPals data center kör versioner av RedHat som är preparerade med säkerhetspolicies. Alla onödiga tjänster och mjukvaror är bortplockade. ”Kombinationen av Linux och öppen källkod låter oss göra de modifieringar vi behöver för att kunna skala och samtidigt ge oss en solid säkerhet”, säger Mengerink.
Schizofreni hos PayPal
Så här långt har mixen av Linux, öppen källkod och snabb programutveckling varit en stor framgång”, fortsätter han. ”Ibland känner vi oss lite schizofrena” säger han avslutningsvis. ”Vi är ett webbföretag....vi är ett realtidsbetalningssystem...å kära nån. Att göra båda sakerna samtidigt är inte enkelt”
http://www.idg.se/2.1085/1.101024