itcamp 2013 - andy cross - broadcasting music from the cloud

Post on 13-May-2015

121 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

itcampro@ itcamp13# Premium conference on Microsoft technologies

Broadcasting Music from the Cloud

Andy Cross

Windows 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 WEB

What 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

itcampro@ itcamp13# Premium conference on Microsoft technologies

Facebooks’ Real Time Web

Facebook has multiple real time web features, such as the news

feed and messaging

itcampro@ itcamp13# Premium conference on Microsoft technologies

Twitters’ Real Time Web

Twitter 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 MEDIA

If 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

SPOTIFY

Broadcast 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)).d

one(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 SIGNALR

Technologies for the Real Time Web

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudWhat does SignalR try to fix?

Here’s some data!

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudHow does it fix it?

Yeah, dude!

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 BACKPLANE

SignalR 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