Your SlideShare is downloading. ×
0
SignalR and ASP.NET                           Welcome to the Real-Time WebTuesday, March 26, 13
Who am I?  I am a Microsoft Certified Solution Developer and I’ve  been developing software since 1979. Since 2009, I have ...
Free mobile tutorials with source                        code @ therockncoder.blogspot.comTuesday, March 26, 13
Want more? Follow me, new tutorials are                    announced on Twitter first:                         @therockncod...
Source code for my tutorials hosted on                                        GitHub @                            https://...
Check out my videos:                 www.youtube.com/rockncoderTuesday, March 26, 13
Our Agenda                    • A Brief History of the Web                    • What is ASP.NET SignalR?                  ...
A Brief History of Web                    • 1990’s - The Static Web                    • 2000’s - The Age of Ajax         ...
1990’s - The Static Web                    • HTML versions 2.0 - 4.01                     • (There never was a version 1.0...
2000’s - The Age of Ajax                    • XMLHttpRequest object                    • Prototype                    • jQ...
2010’s - The Real-Time                             Web                    • Comet                    • WebSocket          ...
Comet                    • Holding open an HTTP connection via a                        variety of techniques like...     ...
What is SPDY?                    • An open network protocol                    • Developed by Google                    • ...
WebSocket                    • Full-duplex communication over a single                        TCP connection              ...
Real-Time Libraries                    • Cramp                    • django-sse                    • sse                   ...
What is ASP.NET                               SignalR?                            ASP.NET SignalR is a new library for    ...
ASP.NET SignalR                    • Create as an open source project by two                        Microsoft employees: D...
Under the Hood                    • WebSockets                    • Server Sent Events, Event Source                    • ...
Installing SignalR                    • The project exists on GitHub but                    • NuGet is the best way to ins...
What’s in the Package?                    • SignalR Core - Server side stuff                    • SignalR JS - JavaScript ...
Other Packages                    • SignalR Client - .NET client                    • SignalR Sample - A fake stock ticker...
What is OWIN?                    • Open Web Interface for .NET                    • A specification for the communication  ...
What’s It Good For?                    • dashboards                    • monitoring                    • collaborative any...
http://shootr.signalr.netTuesday, March 26, 13
https://jabbr.netTuesday, March 26, 13
Building DIRTy Apps                    • Data Intensive Real-Time(y) Apps                    • Two main classes:          ...
Connections                    • The raw connection in SignalR                    • Can connect with 1 - n clients        ...
Connection DemoTuesday, March 26, 13
Hubs                    • Built on top of PersistentConnection                    • Can connect with 1 - n clients        ...
Hub DemoTuesday, March 26, 13
Debugging                    • With Chrome                    • With FiddlerTuesday, March 26, 13
Clients                    • JavaScript (as a jQuery plugin)                    • .NET 4.0/4.5                    • Silver...
Clients                    • Windows Phone 8                    • MonoTouch (official)                    • MonoDroid (offic...
Handling Success                    • Scale-out via the backplane                    • Azure ServiceBus                   ...
Gotchas                    • Documentation is limited                    • Documentation may be out of date               ...
Resources                    • http://signalr.net/                    • https://jabbr.net                    • https://git...
Summary                        ASP.NET SignalR makes it incredibly easy to                        add real-time capabiliti...
Upcoming SlideShare
Loading in...5
×

SignalR

4,763

Published on

Introducing ASP.NET SignalR, a library for adding real-time capabilities to your web app, easily.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,763
On Slideshare
0
From Embeds
0
Number of Embeds
39
Actions
Shares
0
Downloads
155
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "SignalR"

  1. 1. SignalR and ASP.NET Welcome to the Real-Time WebTuesday, March 26, 13
  2. 2. Who am I? I am a Microsoft Certified Solution Developer and I’ve been developing software since 1979. Since 2009, I have been focused on developing mobile applications, for  iPhone, Android, the mobile web, and Windows Phone 7.Tuesday, March 26, 13
  3. 3. Free mobile tutorials with source code @ therockncoder.blogspot.comTuesday, March 26, 13
  4. 4. Want more? Follow me, new tutorials are announced on Twitter first: @therockncoderTuesday, March 26, 13
  5. 5. Source code for my tutorials hosted on GitHub @ https://github.com/RockncoderTuesday, March 26, 13
  6. 6. Check out my videos: www.youtube.com/rockncoderTuesday, March 26, 13
  7. 7. Our Agenda • A Brief History of the Web • What is ASP.NET SignalR? • Under the Hood • Building DIRTy Apps • Debugging • Handling SuccessTuesday, March 26, 13
  8. 8. A Brief History of Web • 1990’s - The Static Web • 2000’s - The Age of Ajax • 2010’s - The Real-Time WebTuesday, March 26, 13
  9. 9. 1990’s - The Static Web • HTML versions 2.0 - 4.01 • (There never was a version 1.0) • Request/ResponseTuesday, March 26, 13
  10. 10. 2000’s - The Age of Ajax • XMLHttpRequest object • Prototype • jQueryTuesday, March 26, 13
  11. 11. 2010’s - The Real-Time Web • Comet • WebSocket • Real-Time LibrariesTuesday, March 26, 13
  12. 12. Comet • Holding open an HTTP connection via a variety of techniques like... • Hidden IFrame • Periodic Polling • Long Polling • Lots of PlumbingTuesday, March 26, 13
  13. 13. What is SPDY? • An open network protocol • Developed by Google • Goal is to reduce page load time • Does not replace HTTP • Modifies HTTP for performanceTuesday, March 26, 13
  14. 14. WebSocket • Full-duplex communication over a single TCP connection • Port 80 or 443 • A low level protocol • Great, but no backwards compatibilityTuesday, March 26, 13
  15. 15. Real-Time Libraries • Cramp • django-sse • sse • Socket.io/Now.js • SignalRTuesday, March 26, 13
  16. 16. What is ASP.NET SignalR? ASP.NET SignalR is a new library for ASP.NET developers that makes it incredibly simple to add real-time web functionality to your applications.Tuesday, March 26, 13
  17. 17. ASP.NET SignalR • Create as an open source project by two Microsoft employees: David Fowler & Damien Edwards • Adopted by Microsoft, but remains open source - source is on GitHub • Like jQuery for communications • Distributed via NuGetTuesday, March 26, 13
  18. 18. Under the Hood • WebSockets • Server Sent Events, Event Source • Forever Frame (IE only) • Ajax long polling • Only WebSockets is true full duplexTuesday, March 26, 13
  19. 19. Installing SignalR • The project exists on GitHub but • NuGet is the best way to install it • Install Microsoft ASP.NET SignalRTuesday, March 26, 13
  20. 20. What’s in the Package? • SignalR Core - Server side stuff • SignalR JS - JavaScript library • SignalR Owin - An OWIN adapter • SignalR SystemWeb - To host on IISTuesday, March 26, 13
  21. 21. Other Packages • SignalR Client - .NET client • SignalR Sample - A fake stock ticker • LCSK - Live chat app • SignalR.EventStream - Monitor your site • ElmahR.Elmah - ELMAH • and lots moreTuesday, March 26, 13
  22. 22. What is OWIN? • Open Web Interface for .NET • A specification for the communication between .NET Web Server and Web App • IIS isn’t the only .NET Web Server, there is HttpListener, server.dll, Kayak, and potentially others • SignalR depends on OWIN for hostingTuesday, March 26, 13
  23. 23. What’s It Good For? • dashboards • monitoring • collaborative anything • job progress • real-time forms • gaming...Tuesday, March 26, 13
  24. 24. http://shootr.signalr.netTuesday, March 26, 13
  25. 25. https://jabbr.netTuesday, March 26, 13
  26. 26. Building DIRTy Apps • Data Intensive Real-Time(y) Apps • Two main classes: • PersistentConnections • HubsTuesday, March 26, 13
  27. 27. Connections • The raw connection in SignalR • Can connect with 1 - n clients • Is an IHTTP handler • Requires route to be defined • Limited to sending messageTuesday, March 26, 13
  28. 28. Connection DemoTuesday, March 26, 13
  29. 29. Hubs • Built on top of PersistentConnection • Can connect with 1 - n clients • Routes automatically mapped • Can send messages and call methods • SignalR defines the protocolTuesday, March 26, 13
  30. 30. Hub DemoTuesday, March 26, 13
  31. 31. Debugging • With Chrome • With FiddlerTuesday, March 26, 13
  32. 32. Clients • JavaScript (as a jQuery plugin) • .NET 4.0/4.5 • Silverlight 5 • Windows Store Apps • iOS (community) • MonoTouch (community)Tuesday, March 26, 13
  33. 33. Clients • Windows Phone 8 • MonoTouch (official) • MonoDroid (official) • iOS (official) • .NET Micro Framework • JavaTuesday, March 26, 13
  34. 34. Handling Success • Scale-out via the backplane • Azure ServiceBus • Redis • SQL ServerTuesday, March 26, 13
  35. 35. Gotchas • Documentation is limited • Documentation may be out of date • But finally a released product!Tuesday, March 26, 13
  36. 36. Resources • http://signalr.net/ • https://jabbr.net • https://github.com/SignalR/SignalR/wiki • http://www.asp.net/signalr/overview/getting- started/tutorial-getting-started-with-signalrTuesday, March 26, 13
  37. 37. Summary ASP.NET SignalR makes it incredibly easy to add real-time capabilities to your web app.Tuesday, March 26, 13
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×