Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Building Realtime Web Applications With ASP.NET...
Search
Shravan Kumar Kasagoni
June 01, 2013
Technology
0
120
Building Realtime Web Applications With ASP.NET SignalR
Shravan Kumar Kasagoni
June 01, 2013
Tweet
Share
More Decks by Shravan Kumar Kasagoni
See All by Shravan Kumar Kasagoni
Functional Programming in JavaScript
shravan
0
32
ASP.NET Core – Deep Dive on Building a Real Website
shravan
0
38
Cross-Platform Mobile Development using Visual Studio and Xamarin
shravan
1
38
Angular 2 with TypeScript
shravan
1
150
Building Next Generation Web Apps and Services using ASP.NET 5
shravan
0
88
Writing Application-Scale JavaScript:TypeScript
shravan
0
54
Running, improving and maintaining a site in the real world
shravan
0
35
Real-time Communications with SignalR
shravan
0
46
Open Web Interface for .NET
shravan
0
140
Other Decks in Technology
See All in Technology
"とにかくやってみる"で始めるAWS Security Hub
maimyyym
2
110
CysharpのOSS群から見るModern C#の現在地
neuecc
2
3.8k
アジャイルチームがらしさを発揮するための目標づくり / Making the goal and enabling the team
kakehashi
4
220
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
800
VideoMamba: State Space Model for Efficient Video Understanding
chou500
0
220
日経電子版のStoreKit2フルリニューアル
shimastripe
1
160
FlutterアプリにおけるSLI/SLOを用いたユーザー体験の可視化と計測基盤構築
ostk0069
0
160
OCI Network Firewall 概要
oracle4engineer
PRO
0
4.2k
Python(PYNQ)がテーマのAMD主催のFPGAコンテストに参加してきた
iotengineer22
0
560
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
150
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
590
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
4
380
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Producing Creativity
orderedlist
PRO
341
39k
It's Worth the Effort
3n
183
27k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
850
Thoughts on Productivity
jonyablonski
67
4.3k
The Invisible Side of Design
smashingmag
298
50k
Become a Pro
speakerdeck
PRO
25
5k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Designing Experiences People Love
moore
138
23k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Transcript
None
Your Presenter Shravan Kumar Kasagoni Software Engineer @ Thomson Reuters
Microsoft MVP – ASP .NET / IIS | MCP Microsoft User Group Hyderabad http://theshravan.net @techieshravan
Agenda Introduction to real-time apps What is SignalR? Demos SignalR
Components Scaleout SignalR
Real-time Application? Real-time functionality is the ability to have server
code push content to connected clients instantly as it becomes available, rather than having the server wait for a client to request new data.
Why Real-time? Users want the latest info, NOW!
Show Me Some Examples Twitter, Facebook, Mail - live
searches/updates Stock streamers Auctions Interactive games Live Scores Collaborative apps (google docs, office web apps) Live user analytics (live graphs)
How to build real-time web apps?
HTTP is an old beast… Never designed for real-time communications
Web is all about request-response Web is stateless
None
Periodic polling Poll from time to time using Ajax
Delay in communication due to polling interval Wastes bandwidth & latency Server Client Polling interval
Long polling Poll but doesn’t respond until there's data
Poll again after data received or after the connection times out Consumes server & threads & connection resources Server Client
Forever Frame Server tells client that response is chucked
Client keeps connection open until server closes it Server pushed data to the client followed by \0 Consumes server threads Server Client
HTML5 Web sockets Extension to HTTP Provides raw
sockets over HTTP Full-duplex Traverses proxies It's still a draft Not every proxy server supports it Not every web server supports it Not every browser supports it They are raw sockets!
too many options
None
None
What is SignalR? An open-source series of libraries that provide
an abstraction around persistent HTTP connections SignalR makes real-time HTTP so easy it seems like magic that it works [In English, please]
SignalR on Old Servers or Clients
SignalR on New Servers and Clients
Basically…
What does SignalR do? Client to Server Persistent connection
over HTTP Easily build multi-user, real-time web applications Auto-negotiates transport
None
SignalR Fallback Long Polling Forever Frame Server Sent Events Web
Sockets
None
None
http://shootr.signalr.net http://firework.cloudapp.net
None
CLIENTS BACKPLANES HOSTS
None
Three backplanes Windows Azure Service Bus SQL Server
Redis
Backplane Load balancing via a common transport mechanism
References http://www.asp.net/signalr/ http://signalr.net/ https://github.com/SignalR/SignalR/wiki
Keep in touch http://theshravan.net @techieshravan
[email protected]
None