Upload
damir-dobric
View
223
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Realtime Messaging und Verteilte Systeme mit Sharepoint und Windows Azure Service Bus
Citation preview
WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
Realtime Messaging und Verteilte Systeme mit
Sharepoint und Windows Azure Service Bus
Dipl.-Ing. Damir Dobric
Lead Architectdaenet
Technology Advisor in Business Platform Division – Microsoft Corp.Microsoft Most Valuable Professional
Email: [email protected]: http://developers.de
CONNECTING ISSUES IN WEB
Agenda
SIGNAL-R
RELAYING
WebSocketsServer Sent EventsForever Frames
WINDOWS AZURE MESSAGINGEXPANDO CONTRACT
Infrastructure for Web
http Request/Response
Xhttp Request/Response
http polling
http Request/Response
Full-Duplex
WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
Polling and Duplex Approach
while(true){var response = httpClient.SendRequest(“http://...”);
processResponse(response.Data);Thread.Sleep(T);
}
tcpClient.TimeOut = 999999..;var netStream = tcpClient.SendHttpRequest(“http://...”); while(true){ var data1 = netStream.Read(); var data2 = processData(data1); netStream.Write(data2); }}
CONNECTING ISSUES IN WEB
SIGNAL-R
SIGNAL-R
RELAYING
SERVER SENT EVENTS
WebSocketsServer Sent EventsForever Frames
WINDOWS AZURE MESSAGING
WebSockets
• Driven by HTML5• Full-Duplex over TCP• Browser native Socket connection• IETF Spec. - HyBi 17
(IE10 Win8=HyBi10)
WebSockets Sequence
Developers.dehttp://developers.de/blogs/damir_dobric/archive/2012/01/29/websockets-in-asp-net-and-javascript.aspx
Server Sent Events• Push from a server to a browser• Part of HTML5 spec• http://dev.w3.org/html5/eventsource• Header: text/event-stream• Implemented natively in Browser• Long polling without closing connection
http://dsheiko.com/weblog/websockets-vs-sse-vs-long-polling
Forever-Frame streaming
• Push notifications• Not based on Long-Polling• Uses HTTP 1.1 chunked encoding
SignalR• Permanent Connection support for none HTML5 browsers.• Use it when infrastructure does not support any other push
technology
• Two Part Library– jQuery PlugIn for Client– .NET Library for Server
• Supported Transports:– Long polling– WebSockets– Forever Frame streaming– Server Sent events
CONNECTING ISSUES IN WEB
DEMO
SIGNAL-R
RELAYING
SERVER SENT EVENTSServer Sent EventsForever Frames
WINDOWS AZURE MESSAGING
CONNECTING ISSUES IN WEB
RELAYING
SIGNAL-R
RELAYING
SERVER SENT EVENTSServer Sent EventsForever Frames
WINDOWS AZURE MESSAGING
Service Bus Connectivity
Service Bus
Client
1. Outbound, bi-directional TCP socket connection2. Outbound,
bi-directional TCP socket connection
Service
3. Route and relay the message, and send it to the service.
Forwarder
CONNECTIVITY
• Relaying• Tunneling• Eventing• Push
WCF Relay Protocol Support
Microsoft.ServiceBus.dll v1.6
SharePoint Relaying
WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
• Connecting Issues in Web
• Missing Callback• Cannot initiate Connection from Server
• HTML5 Way
• WebSocket specification• Still no server support• Still no client support• IIS8/Windows8/http.sys vNext
• SignalR
• No need for HTTP.Sys vNext• No need for HTML5• Full Cross Browser Support
• Service Bus
• Point to Point Connection through firewall
Q & A
WINDAYS12 TECHNOLOGY OBRAZOVNI PARTNER
Consumer
Service
Consumer
ServiceBROCKER
Q&AWeb Development with WebSockets and SignalR
Damir Dobricblog: http://developers.dehttp://twitter.com/#!/ddobric
• HTML5• Push Notifications• Long polling• Server Sent Events• Forever Frame• WebSockets• SignalR
© 2012 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.