Signal r azurepresentation

  • 324 views
Uploaded on

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
324
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
4
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. The Real-Time Web with SignalRand Azure Service BusJustin WendlandtSenior Consultant – Magenic Technologieshttp://jwendl.net/@jwendl on Twitter
  • 2. OverviewReal Time WebImplementationsExamplesSignal RHorizontal Scaling with AzureDemoQuestions and Answers
  • 3. Real-Time Web Overview• Content on Demand vs. Published• UX Similar to DesktopApplications• More Social and Interactive
  • 4. Forced Video Feed Switching• Scott Hanselman for DotNetConf• Problem – Google Hangouts required users to refresh browser to see nextvideo• Solution – Have SignalR and Azure Service bus switch out the videos whenan administrator published them
  • 5. Real-time Deals on Amazon.com• Real time deals based onpurchased data• More social and interactiveexperience for users
  • 6. Real-Time Map API Hooks• Use Bing Api• Provide Locations of Users WhenDiscovered
  • 7. The Web and HTTP•Browser asks for document•Server replies with 200 ok and bodyGET•Browser uploads a document•Server replies with 200 okPUT•Browser takes previous response•Sends modified data to server•Server replies with 200 okPOST•Browser asks server to remove a document•Server replies with 200 ok and deletesdocumentDELETE•Browser takes previous response•Browser sends only merged data to server•Server replies with 200 okMERGE
  • 8. Publish Subscriber PatternPublisherSubscribersService Busor HubDevices
  • 9. Publish Subscriber Pattern on the Web• Implemented using Web Sockets– RFC 6455– Googlehttp://www.rfc-editor.org/rfc/rfc6455.txt
  • 10. Introduction to SignalR• https://github.com/SignalR• Most popular implementations– Jabbr - https://jabbr.net/
  • 11. Failover Methods if Web Sockets FailWeb SocketsServer Sent Events (EventSource)Forever FrameAjax Long Polling
  • 12. Why Azure?• Highly Scalable• Unlimited Bandwidth (for a cost)• Easy Deployment andConfiguration models
  • 13. Continuous Integration and AzureWrite CodeCheck In tocloudA Build isKicked offDeploymentSent toAzure
  • 14. SignalR Demonstration• Hosted on Azure with TFS (http://tfs.visualstudio.com/)• Requirements to run Demo– Windows Azure SDK– SignalR NuGet package– ASP.NET MVC 4
  • 15. Horizontal Scaling Concepts• Server hardware is expensive• Configuring more instances iscomplex
  • 16. Azure Service Bus• Queues– Holds Messages– Pushes to Subscribers• Topics– Contract– Specific Messages / Connections
  • 17. Demo of Azure Service Bus• Simple demo of Azure Service Bus
  • 18. Scale out using Azure Service Bus• Integrated in 1.1 beta for SignalR• One line of code that does so much
  • 19. Performance Configurations for IISIncrease number of concurrent requests perapplicationIncrease number of concurrent requests per CPUIncrease the request queue limitScale out more instances if on Azure or another ServiceBus like Redis
  • 20. References• SignalR– http://signalr.net/– http://www.asp.net/signalr/overview– https://github.com/SignalR/SignalR– http://weblogs.asp.net/davidfowler/– http://damianedwards.wordpress.com/– http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx• Azure Service Bus– http://www.windowsazure.com/en-us/develop/net/tutorials/multi-tier-application/– http://www.windowsazure.com/en-us/develop/net/how-to-guides/service-bus-queues/– https://github.com/SignalR/SignalR/wiki/Azure-service-bus• Web Sockets– http://www.w3.org/TR/websockets/– http://www.rfc-editor.org/rfc/rfc6455.txt
  • 21. Questions?@jwendl on Twitterjwendl@hotmail.comhttp://www.jwendl.net/