8. www.devconnections.com
ASP.NET SIGNALR
SIMPLICITY: TWO-LEVEL API
Low level
Raw strings up & down
Broadcast to all clients, groups or individuals
Connection, reconnect & disconnect semantics
Built on top of connections
RPC from client-server *AND* server-client
Automatic client proxy generation (JavaScript)
12. www.devconnections.com
ASP.NET SIGNALR
REACH: BUT WHAT ABOUT WEBSOCKETS?
WebSockets works if…
You use ASP.NET 4.5 on Windows Server
2012 AND
Client uses IE10 or latest Chrome, FF, Safari
AND
Your load balancer/reverse proxy supports
it AND
Client proxy server/NAT supports it AND
Everybody between client & server
supports it AND
You’re happy coding against raw sockets
AND
You manage scale-out yourself
SignalR works…
Everywhere
We’ll try WebSockets then fallback to:
• Server Sent Events
• Forever Frame
• Long Polling
We give you a simple & powerful API to
work with
We do our best to keep the logical
connection up, including retry logic if
transports fail
We scale-out to web-farms
14. www.devconnections.com
ASP.NET SIGNALR
REACH: CLIENTS FOR EVERYBODY!
Right now
JavaScript (jQuery)
.NET 4.0/4.5
Silverlight 5
Windows Store apps
Windows Phone 8
Portable Class Library
MonoTouch
MonoDroid
In the future
C++
Pure JavaScript (no jQuery)
iOS native
Java
.NET Micro Framework
…
17. www.devconnections.com
ASP.NET SIGNALR
PERFORMANCE: THROUGHPUT & SCALE
Very high performance on a single box
100,000’s of messages per second
Very low memory overhead
Fully async to optimize resource utilization
1,000’s of connections per server
Supports horizontal scale-out using a pluggable message bus backplane
(Azure Service Bus, Redis, SQL)
19. www.devconnections.com
ASP.NET SIGNALR
THERE’S MORE…
Run it in your ASP.NET application or standalone with self-host on OWIN
Run it on OSX or Linux with Mono
#1 watched C# repo on GitHub
Supported part of the ASP.NET family
www.asp.net/signalr