SignalR 101

Preview:

DESCRIPTION

This topic covers SignalR on a general level. The demo used for this talk was a modification of the default chat application to make it more descriptive and realistic in enterprise setting.

Citation preview

Patrick Oliveros

Microsoft MVP ASP.NET/IIS

SIGNALR 101

MICROSOFT DEVELOPER PHILIPPINES TECHNICAL SHARING

The web evolvedEvent-based, real-time UI

Partial page updates (Ajax), RIA

Dynamic pages, forms

Static HTML pages

Scenarios

ImplementationsPeriodic Pooling

Long Polling

Server-Sent Events

Web Sockets

Periodic Pooling

Polling interval

Cons:

• Poll from time to time using Ajax• Delay in communications due to polling interval• Wastes bandwidth & latency

Long Pooling

Cons:

• Poll but don’t respond untill there’s data• Poll again after data received or after the connection times out• Consumes server threads & connection resources

Web Sockets (HTML 5)• Extension to HTTP• Provide raw sockets over HTTP• Full-duplex• Traverses proxies

• It’s still a draft…• Not every proxy server supports it • Not every webserver supports it • Not every browser supports it • They are raw sockets!

So What Now?Superman SignalR to the rescue!

Enter SignalR

• ASP.NET SignalR is a new library for ASP.NET developer that makes it incredibly simple to add real-time web functionality to your applications

• Async signaling library for .NET to help build real-time, multi-user interactive web applications ( aka persistent connection abstraction for .NET);

Enter SignalR

Transport PriorityWeb Sockets

Server-Sent Events

Forever Frame

Long Polling

Demo

Resources• SignalR project page:

http://www.signalr.net

• SignalR on github:

https://github.com/SignalR/SignalR

Thanks!