28
itcampro @ itcamp13 # Premium conference on Microsoft technologies Broadcasting Music from the Cloud Andy Cross Windows Azure MVP Elastacloud @andybareweb blog.elastacloud.com

ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

  • Upload
    itcamp

  • View
    121

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Broadcasting Music from the Cloud

Andy Cross

Windows Azure MVP

Elastacloud

@andybareweb

blog.elastacloud.com

Page 2: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudHuge thanks to our sponsors!

Page 3: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 4: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

REAL TIME WEB

What is the

Any sufficiently advanced technology is indistinguishable from magic.

Arthur C Clarke

Page 5: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

Cloud

• A history!

– HTML

– Javascript

– Iframes

– XmlHttp

– AJAX

– JSONP

– Web Sockets

Real Time Web

Page 6: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 7: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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*

Page 8: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 9: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

SOCIAL MEDIA

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

Page 10: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 11: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudThe Real Time Web

Page 12: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

SPOTIFY

Broadcast Music to

Page 13: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 14: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 15: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 16: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

SYNCHRONICITY?

But how do we achieve

Page 17: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 18: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 19: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

ASP.NET SIGNALR

Technologies for the Real Time Web

Page 20: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudWhat does SignalR try to fix?

Here’s some data!

Page 21: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudHow does it fix it?

Yeah, dude!

Page 22: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudComponents

Page 23: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

WINDOWS AZURE WEBSITES

Scalable Hosting

Page 24: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

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

Page 25: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

SERVICE BUS BACKPLANE

SignalR scale out

Page 26: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Private & Public

CloudScaling with the Service Bus

Page 27: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

ROCK! HONK!

Enough talk!

Page 28: ITCamp 2013 - Andy Cross - Broadcasting Music from the Cloud

itcampro@ itcamp13# Premium conference on Microsoft technologies

Q & A