• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
SignalR + Mobile Possibilities (CodeMash)
 

SignalR + Mobile Possibilities (CodeMash)

on

  • 1,671 views

 

Statistics

Views

Total Views
1,671
Views on SlideShare
1,671
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    SignalR + Mobile Possibilities (CodeMash) SignalR + Mobile Possibilities (CodeMash) Presentation Transcript

    • Local Touch – Global Reach Intro to SignalR + Awesome Mobile Possibilities!Samidip BasuSolutions Lead | MSFT MobilityEmail: Samidip.Basu@us.sogeti.comTwitter: @samidipBlog: http://samidipbasu.comSogeti USA8425 Pulsar Place, Suite 300 | Columbus, OH 43240.www.us.sogeti.com www.us.sogeti.com
    • Why do we need real-time?New emailTwitter/Facebook updatesStock Ticker/Live AuctionsGame ScoresReal-time NotificationsTurn-by-Turn or Shooter GamesCollaborationProgress BarsAnd obviously, Chat
    • Existing TechnologiesHTTP – purely Request/Response protocolInternet – stateless; servers don’t call your app backConsumption model .. But we’ve learnt tricksPeriodic/Ajax Polling – not real-time, bandwidth misuse Image courtesy @maartenballiauw
    • Existing Technologies ..Contd. plugins like SL/Flash – to access sockets Use Native Web Sockets (Magic Unicorn world) – but low level & support flaky Long Polling – server does not respond unless X happens, client polls after data receive or time-out Forever Frame (execute script blocks from server in iFrame) Server sent Events (Push or Stream from server) Image courtesy @maartenballiauw
    • Enter SignalRAn async, persistent connection/signalling library for .NET over HTTP ... aids in building real time, multi-user connected applications.Persistent client-server connection over best transport .. Abstracts away the transport layer.From ASP.NET team-members (Damian Edwards & David Fowler) .. Not officially MSFT product, but OSS Boom! https://github.com/SignalR/SignalRhttp://jabbr.net/#/rooms/signalhttp://shootr.signalr.net/SignalR is broken up into a few packages on NuGet: SignalR - Package for SignalR.Server and SignalR.Js SignalR.Server - Server components needed for SignalR endpoints SignalR.Js - Javascript client for SignalR SignalR.Client - .NET client for SignalR SignalR.WP7, SignalR.WinRT, SignalR.Silverlight – For the cool folks  SignalR.WebSockets - WebSocket Transport for SignalR
    • Live Demos & WalkthroughClient calls server; Server calls client; seamlessly – Whoa!No polling, at least in our codeLow level – PersistentConnection more controlAbstraction – Hub easier to use like spokes on a wheel, broadcastingServer maintains Clients .. Broadcast to all, group or individual clientsBuilt-in Retry logic if transport failsSupports scaling out to web farms - backplane support through Service Bus or Redis (in memory DB) to pump messages between multiple servers
    • Where does this fit?Other technologies have solved this problemSocket.IO is a client-side Jscript library that talks to node.jsNowjs supports namespace sync between client-serverPrimary SignalR advantages → Simplicity & ease of use → Works natively in .NET → Works out of browser → Supports Web Sockets for best transport [ASP.NET 4.5/IIS 8 on Win8 only] WebSocket is a web technology providing for multiplexing bi-directional, full-duplex communications channels over a single TCP connection. Still being standardized. → Works on other platforms, specially mobile
    • SignalR Client for iOShttp://dyknow.github.com/SignalR-ObjC/
    • SignalR Client for Monohttp://blog.rthand.com/post/2012/03/14/SignalR-client-on-Mono-for-Android.aspx
    • Local Touch – Global ReachQuestions?Thank you !!@samidip www.us.sogeti.com