Broadcasting music from the cloud

Post on 13-May-2015

331 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Using Spotify and Windows Azure websites to distribute music. This includes ASPNET SignalR. Prepared for ITCAMP.RO

Transcript

itcampro@ itcamp13# Premium conference on Microsoft technologies

Broadcasting Music from the Cloud

Andy CrossWindows Azure MVP

Elastacloud@andybareweb

blog.elastacloud.com

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudHuge thanks to our sponsors!

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• Real Time Web• Social media is the new telephone• Spotify API• Synchronicity • SignalR• Windows Azure Websites• Service Bus• ROCK!!!

Agenda

itcampro@ itcamp13# Premium conference on Microsoft technologies

REAL TIME WEBWhat is the

Any sufficiently advanced technology is indistinguishable from magic.

Arthur C Clarke

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• A history!– HTML– Javascript– Iframes– XmlHttp– AJAX– JSONP–Web Sockets

Real Time Web

Propensity to push

itcampro@ itcamp13# Premium conference on Microsoft technologies

Facebooks’ Real Time WebFacebook has multiple real time web features, such as the news feed and messaging

itcampro@ itcamp13# Premium conference on Microsoft technologies

Twitters’ Real Time WebTwitter is perhaps the ultimate in real time web opportunities, but even it struggles with *n more tweets*

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• With great advantages– Instant messaging– Responsive user interfaces– Collaboration and sharing

• Come some great problems– Scalability• Concurrent connections• Server load

– Complexity of client

Real time web pitfalls

itcampro@ itcamp13# Premium conference on Microsoft technologies

SOCIAL MEDIAIf you want to share music, the 1990s were better than

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• Billions of users of facebook• Imagine sharing music on there. – READY. STEADY. GO!!!

• My real time is not your real time• If we want to build engagement on– Brand– Concept–Movement

• we must engage simultaneously

Social Media

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudThe Real Time Web

itcampro@ itcamp13# Premium conference on Microsoft technologies

SPOTIFYBroadcast Music to

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• Spotify is a 4 year old ‘start up’– Streaming music– Integrated apps

• Apps are written in HTML5 and JS– Chromium Embedded

• Its API for apps gives every song a URI– spotify:track:12345679abc

• We will distribute these URIs along with a Play command

Spotify

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

function playTrack(data) { console.log(data); player.playTrack(models.Track.fromURI(data)).done(function () { //this is a promise update the ui maybe });

Example Spotify code

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• Introducing Goose• Geese fly together.• Geese fly in flocks.• There is a lead goose in the flock• The rest are tail geese.• Geese honk• Geese sing• Geese flap

Using the Real Time Web to fix this

itcampro@ itcamp13# Premium conference on Microsoft technologies

SYNCHRONICITY?But how do we achieve

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• We can send a Play command to individuals.

• How can we combine the Real Time Web with this?

My real time is not your real time

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• We cannot just send PLAY commands–What if we join part way through a song– Nothing would be played until we

completed the song

• We also track the LEAD GOOSE’s position

My real time is not your real time

itcampro@ itcamp13# Premium conference on Microsoft technologies

ASP.NET SIGNALRTechnologies for the Real Time Web

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudWhat does SignalR try to fix?

Got Data?Got Data?Got Data?Got Data?

Here’s some data!

Got Data?Got Data?Got Data?

Got Data?

ServerClient

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudHow does it fix it?

ServerClient

I do real time, do you?

Yeah, dude!

Let’s Party in Real-time!

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudComponents

itcampro@ itcamp13# Premium conference on Microsoft technologies

WINDOWS AZURE WEBSITES

Scalable Hosting

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public Cloud

• Start on Free – And continue for dev/test

• Production uses Reserved Mode– Custom URL– Scalable as easily as:

Not a lightweight option

itcampro@ itcamp13# Premium conference on Microsoft technologies

SERVICE BUS BACKPLANESignalR scale out

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public CloudScaling with the Service Bus

itcampro@ itcamp13# Premium conference on Microsoft technologies

ROCK! HONK! Enough talk!

itcampro@ itcamp13# Premium conference on Microsoft technologies

Q & A

top related