SignalR beim ShareCamp 2013
Upcoming SlideShare
Loading in...5
×
 

SignalR beim ShareCamp 2013

on

  • 882 Views

 

Statistics

Views

Total Views
882
Views on SlideShare
868
Embed Views
14

Actions

Likes
0
Downloads
7
Comments
0

1 Einbettung 14

https://twitter.com 14

Zugänglichkeit

Kategorien

Details hochladen

Uploaded via as Microsoft PowerPoint

Benutzerrechte

© Alle Rechte vorbehalten

Report content

Als unangemessen gemeldet Als unangemessen melden
Als unangemessen melden

Wählen Sie Ihren Grund, warum Sie diese Präsentation als unangemessen melden.

Löschen
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Ihre Nachricht erscheint hier
    Processing...
Kommentar posten
Kommentar bearbeiten

SignalR beim ShareCamp 2013 SignalR beim ShareCamp 2013 Presentation Transcript

  • SignalR Asynchrone Echtzeitanwendungen in SharePoint mit SignalR und knockout.JS Christian Heindel @c_heindel christian.heindel@communardo.de
  • Vor einem Jahr… SignalR ist ein Projekt von • David Fowler (Senior Software Design Engineer, ASP.NET Team) • Damien Edwards (Senior Program Manager, Microsoft) GitHub, Nuget Gallery, SignalR 0.5 ShareCamp 2012 Christian Heindel: Push-Benachrichtigungen in SharePoint via SignalR© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 2
  • Folien ShareCamp 2012 http://de.slideshare.net/c.heindel/pushbenachricht igungen-in-sharepoint-via-signalr© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 3
  • Mittlerweile… • SignalR offiziell zu ASP.NET aufgenommen • Größeres Team bei Microsoft (z.B. Patrick Fletcher) • Professionelle Software- und Lasttests ;-) • fast 50.000 Downloads via nuget • Zusätzliche Open Source-Bibliotheken und Projekte entstehen, z.B. SignalR-ObjC @ GitHub (für iOS and Mac) • Jabbr.net (mächtig!) • IE10 (Yippie!)© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 4
  • Mittlerweile… • Mai 2012: DEMO: Max Melcher (Download-Tracking) • November 2012: DEMO: Realtime ASP.NET Web API tracing with SignalR • Dezember 2012: Max Melcher schwitzt und flucht: http://melcher.it/2012/12/signalr-in-sharepoint-2013-the- real-time-web-is-coming/ • Dezember 2012: SignalR on Mono rücken näher zusammen (Link) • Februar 2013: Channel 9 veröffentlicht Video Building Web Apps with ASP.NET Jump Start: (08) Real- time Communication with SignalR (Link, 53m) • Februar 2013: Publish the SignalR Getting Started Sample as a Windows Azure Web Site© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 5
  • Mittlerweile… • März 2013: Ergänzung zur Download DEMO, ein Upload- Beispiel (BEKK) • März 2013: Christian Weyer: 3h 28m, Intermediate Introducing ASP.NET SignalR - Push Services with Hubs (Link) • März 2013: MSDN Dokumentation verfügbar • März 2013: Shopping Cart Beispiel • Seit 2 Tagen: 12.04.13: SignalR 1.1.0beta (mit ScaleOut Providern für Redis, SqlServer and Azure Service Bus) • ShareCamp 2013…© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 6
  • Was ist SignalR?© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 7
  • Transportwege und Fallbacks • WebSockets • Server Sent Events • Forever Frame • Ajax long polling (Dokumentation)© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 8
  • Modell 1: Connection http://www.asp.net/signalr/overview/introduction/connections-and-hubs - simple endpoint for sending single-recipient, grouped, or broadcast messages - Connection API (represented in .NET code by the PersistentConnection class) - direct access to the low-level communication network that SignalR exposes - familiar to developers who have used connection-based APIs such as Windows Communication Foundation.© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 9
  • Modell 2: Hub - high-level pipeline built upon the Connection API - allows client and server to call methods on each other directly - SignalR handles dispatching across machine boundaries as if by magic - For different types of messages, it is recommended that you use the Hub class, so that you wont have to create your own dispatching - using the Hub, you can call methods on the clients, rather than sending an explicit message that needs to be received, interpreted, and acted upon - familiar to developers who have used remote invocation APIs such as .NET Remoting.© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 10
  • Systemanforderungen Auf Facebook würde man schreiben: “Es ist kompliziert” Auszug aus der Dokumentation: Server: 2012*, 2008 r2, Azure Website, Windows 8*, Windows 7 .NET Framework: 4.0 / 4.5* IIS: 7,7.5,8*, 8 Express* Browser: IE10* Silverlight: N/A (restr. 5+) WP8: IE* (restr. WP8 App) Nur * unterstützt auch Websockets© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 11
  • Lastgrenzen / Lasttest • Standardlimit im IIS: 5.000 Verbindungen pro CPU • Für SignalR gehen z.B. auch 20.000 Verbindungen • Spezielle Protokolle erfordern spezielles Lasttestwerkzeug https://github.com/SignalR/SignalR/tree/dev/src/Microsoft.AspNet.SignalR.Crank© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 12
  • Open Source The source code for ASP.NET SignalR is available under an open source license. Developers outside of Microsoft may submit patches and code contributions that the Microsoft development team will review for potential inclusion. The framework continues to be fully support and staffed by Microsoft.© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 13
  • Forum http://forums.asp.net/1254.aspx© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 14
  • SharePoint macht mal wieder nur Probleme… SharePoint 2010 • SharePoint verwendet .NET Framework 3.5 • SignalR benötigt .NET Framework 4.0 / 4.5 •  Proxy notwendig (WCF, HttpHandler o.ä.) SharePoint 2013 • .NET Framework 4.0 Aber: • Normalerweise hängt sich SignalR an „App_Start“ Event und registriert die Route „~/signalr/hubs“ (Clients finden damit immer den Hub) • In SharePoint gibt es aber kein „App_Start“! ¯_(ツ)_/¯ Global.asax kann man nicht automatisch deploybar anpassen Lösung: HttpModule (Link)© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 15
  • Derzeitige Lösung für SharePoint 2013 • HttpModule • SPWebConfigModificationHandler • VirtualPathProvider <SanftenDruckErhoehen> Nette Verpackung als Open Source Lösung von Max Melcher geplant… ;-) </SanftenDruckErhoehen>© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 16
  • © Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 17
  • Alternative Socket.IO (Framwork für node.js) NowJS (ein node.js Modul)© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 18
  • Kontakt Communardo Software GmbH Kleiststraße 10 a 01129 Dresden http://www.communardo.de info@communardo.de Telefon: +49 (351) 833 820 Standort Stuttgart Leinfelder Straße 64 70771 Leinfelden-Echterdingen Telefon: +49 (711) 722 497 09 Christian Heindel christian.heindel@communardo.de www.communardo.de Telefon: +49 (351) 833 82-234© Communardo Software GmbH · Kleiststraße 10 a · D-01129 Dresden/Germany · Fon +49 (351) 833 82-0 · Mail info@communardo.de · www.communardo.de Seite 19