Visar inlägg med etikett spotify. Visa alla inlägg
Visar inlägg med etikett spotify. Visa alla inlägg

lördag 15 oktober 2011

Hur spotify fungerar

Det finns en mycket intressant artikel som berättar om hur spotify fungerar (i vissa avseenden).
Klienten strömmar data både från spotifys servrar och andra klienter. Hur detta sker berättas i artikeln som går att läsa här:
http://www.csc.kth.se/~gkreitz/spotify-p2p10/

Väldigt intressant. Spotifyservrarna står för ca 9% av lasten, 36% via andra klienter och resten från lokalt lagrade data. Det betyder alltså att serverbelastningen är en femtedel av vad den hade varit utan p2p-funktionen!
Genom att börja ladda låtar från servern lyckas man hålla nere fördröjningen från "play" till att det börjar spela till imponerande 256 ms (medianvärde).

Artikeln beskriver hur man begränsar t ex antalet anslutningar och andra parameterar för att förenkla implementationen av både klient och server, och att minska belastningen på folks nätverksutrustning.

Undrar hur stor lasten är totalt? Totalt finns ca 10 miljoner användare(källa: http://www.csc.kth.se/~gkreitz/spotify-p2p11/). Om jag gissar att genomsnittsanvändare lyssnar på ca 20 låtar á 4 minuter om dagen (en vild gissning) och denna delas jämnt över ca 12 timmar (aktiviteten är störst dagtid, lasten är nästan sinusformad, se http://www.csc.kth.se/~gkreitz/spotify-p2p10/, detta motsvarar toppvärdet 2 ggr genomsnittslasten)
så blir totala lasten som högst under dagen
10e6 användare*20 låtar*240 s/låt/(12 h*3600 s/h) * 160 kbit/s=178Gbit/s

Med avlastning enligt ovan behöver servrarna bara ta hand om 9% av detta vilket blir 16 Gb/s. Det är en rätt stadigt belastning. En gigabitanslutning för företag kostar ca 10kSEK/mån exkl. moms sist jag kollade (2008?). Om vi bortser från volymrabatt betyder det att bandbredden per användare kostar ca 16*10e3/10e6=2 öre per användare och månad. (man behöver lite marginal för sällsynta tillfällen, så låt marginalen kvittas mot volymrabatten för att slippa räkna mer noggrant.)
Hur många servrar behöver man? Säg att en server kan streama musik i 200 Mbit/s (trots allt är det rätt jobbigt eftersom alla klienter vill åt olika filer, jobbigt jämfört med om 10 miljoner klienter ska ladda ner samma ubuntu-iso som då kan cachas), då behövs ca 100 servrar (några går väl åt för att sköta trackern också). Sen ska det skickas ut reklam, hanteras inloggning etc men det måste vara trivialt jämfört med att strömma musik i 16Gb/s. Med 200W per server (man får hoppas de bygger energisnålt!) blir det ca 100*200W*730 timmar/månad*1 kr/kWh=15 kSEK elräkning per månad, ca 0.15 öre per användare och månad.
Säg att det går åt dubbelt så många servrar (någonstans måste musiken lagras) så är det ett väldigt kostnadseffektivt sätt att distribuera musik. Har för mig att en cd kostar tio kr att tillverka.

Stor brasklapp för att jag klantat till något i beräkningarna ovan. Har inte dubbelkollat, utan skrivit medan jag tänkt.

söndag 22 november 2009

Ge mig musiktips!

Jag provar en kul grej - har markerat en spellista som "collaborative" så att den som vill kan lägga till tips!
Så ge mig en utmaning - lägg till vad du tycker jag vill lyssna på http://open.spotify.com/user/paulsundvall/playlist/19FQIRHl7lXCAqr2Ixj7jI eller med direktlänk spotify:user:paulsundvall:playlist:19FQIRHl7lXCAqr2Ixj7jI

Kompisar till Ali Farka Touré (reservation för stavning...), Foo Fighters eller Keith Jarret gör mig extra glad!

Uppdatering:
Tack alla för tips, det har varit väldigt kul! Fortsätt gärna.
  • För mig var Jan Johansson en helt ny upptäckt. Jättekul!
  • Nils Petter Molvaer var också en ny upptäckt. Riktigt klingan-material.
  • Eric Gadd hade jag nästan glömt bort.
  • Pat Metheny hade jag glömt bort. Fantastisk musik.
  • Melody Gardot är rätt bra. Jag har aldrig gillat jazzsång, men det här är något speciellt.
Det skulle vara kul om någon kan få mig att tycka att hip-hop är bra. Något förslag?

torsdag 30 juli 2009

Balla trummor

Jag har skaffat Spotify och har hittat denna artist via deras radiofunktion:
Ginger Baker.

Här är en låt: (jag prövar att länka i två olika format, de pekar båda till låten "African Force")
http://open.spotify.com/track/30mxmz56LaIEGhmR2IIsSm
spotify:track:30mxmz56LaIEGhmR2IIsSm

För övrigt går det ganska bra att köra Spotify under wine. Det muppar lite ibland och programmet följer inte länkar man trycker på, men ja ja.

fredag 27 februari 2009

Klient för Spotify

Spotify är en imponerade tjänst som det är svårt att ha missat - alla som har provat verkar ha berättat för alla de känner!
När jag provade upptäckte jag att Metallica saknades - typiskt att tänka på det som saknas istället för allt som finns....

Spotifys funktion finns beskrivet på wikipedia där det står att klienten använder ogg för komprimering av ljudet. Kul att denna fria codec får ökad användning. Vore toppen om svt och svenska staten kunde hänga på och använda fria format de också.

Nu har det kommit en klient med öppen källkod till *nix (reservation för inexakt beskrivning, men det funkar iallafall under linux). Läs mer på despotify.se.
Utvecklarna verkar ha som syfte att stödja spotify, intressant i dessa Pirate-Bay-rättegångs-tider! Trots det goda syftet är de hittills hemliga. En notis om att de kontaktat jurister ger en hint om att detta kan vara känsligt.

En intressant sak jag såg i källkoden är ett tips om en funktionalitet som heter "puzzle" som innebär att klienter får lösa ett pussel som är lätt att konstruera och verifera men tar ett tag att lösa. På det sättet blir tjänsten (spotifys servrar, alltså) mindre känsliga för denial of service. En intressant artikel som var lättläst om ämnet fanns länkad till i källkoden:
pauls@avagadros:~/code/thirdparty/despotify/src$ grep google *
auth.c: * http://google.com/search?q=aura-nikander-leiwo-protocols00.pdf
auth.c: * http://google.com/search?q=005-candolin.pdf