Real time web applications with SignalR (BNE .NET UG)

826 views
671 views

Published on

Static web pages and data don't cut it anymore. Information online is real-time and even web applications should respond to continuous changes. As SignalR has recently been introduced as a component to the ASP.NET runtime there's no better time to start building web application that respond to change. SignalR does all the heavy lifting and makes it easy to introduce into a wide range of projects, so pry your application out of the static mould and start responding to the real dynamic nature of information and changes as they occur.

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

  • Be the first to like this

No Downloads
Views
Total views
826
On SlideShare
0
From Embeds
0
Number of Embeds
144
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Real time web applications with SignalR (BNE .NET UG)

  1. 1. Real-time web applications with SignalR 2.0 Brendan Kowitz brendan.kowitz@readify.nethttp://www.kowitz.net@brendankowitz
  2. 2. Agenda Getting started with SignalR Adding Real- time updates to an existing app Advanced scenarios (Rich client, Performance and scaling)
  3. 3. Why SignalR?
  4. 4. Why use SignalR?
  5. 5. What is SignalR? http://channel9.msdn.com/Events/TechEd/NorthAmerica/2014/DEV-B416
  6. 6. Getting started
  7. 7. SignalR Hosts Host agnostic – run in asp.net or stand alone with self-host on OWIN Changes in 2.0 – more integration with OWIN, different hub registrations // no longer:RouteTable.Routes.MapHubs(); namespace MyWebApplication { public class Startup { public void Configuration(IAppBuilder app) { app.MapSignalR(); } } }
  8. 8. Hubs and Connections Connections – LOW LEVEL Raw strings up and down Broadcast to all clients, groups or individuals Connection, reconnection and disconnection semantics Hubs – Bit higher level Client-server and server-client Automatic client proxy generation
  9. 9. Try it yourself:
  10. 10. What to include?
  11. 11. Adding SignalR to an existing app
  12. 12. Agile Dashboard
  13. 13. Agile dashboard libraries DurandalJS Knockout Postal Toastr
  14. 14. Security? Same as any other web application (browser will respect auth cookies and HTTPS).
  15. 15. SignalR clients? Clients for pretty much everybody. .NET 4.5 SL5 Store apps Phone apps Portable apps Xamarin
  16. 16. Rich client SignalR
  17. 17. Rich client SignalR – how is it different? CreateHubProxy .On<Stock>
  18. 18. Agile dashboard…In Excel!!
  19. 19. Performance & Scale
  20. 20. Performance Throughput 100,000s of message per second Very low memory overhead Scale Fully async to optimise resource utilisation 1,000s of connections per server (concurrent) Supports horizontal scaleout using pluggable message bus backplane
  21. 21. Which are currently valid scale-out options for SignalR? a) SQL Server b) Windows Azure Service Bus c) ZeroMQ d) Redis e) Messaging Ferrets http://animals.nationalgeographic.com/animals/mammals/ black-footed-ferret/ http://www.asp.net/signalr/overview/performance-and- scaling/scaleout-in-signalr
  22. 22. How does it work?
  23. 23. What’s next? http://www.quickmeme.com/meme/35dm11/
  24. 24. Further watching Building Real-time Applications with SignalR http://channel9.msdn.com/Events/TechEd/NorthAmerica/201 4/DEV-B416 Microsoft ASP.NET SignalR: The Real-Time Web Made Simple http://channel9.msdn.com/Events/TechEd/NorthAmerica/201 3/DEV-B302 Building Real-time Web Apps with ASP.NET SignalR http://channel9.msdn.com/Events/Build/2012/3-034
  25. 25. Take-away Getting started with SignalR Adding Real-time updates to an existing app Performance Advanced scenarios
  26. 26. Get the source! https://github.com/brendankowitz/AgileR brendan.kowitz@readify.nethttp://www.kowitz.net@brendankowitz

×