• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure
 

ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure

on

  • 1,424 views

 

Statistics

Views

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

Actions

Likes
0
Downloads
19
Comments
1

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

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

11 of 1 previous next

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

    ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure ITCamp 2011 - Florin Cardasim - Duplex Communications with WCF and Azure Presentation Transcript

    • IT Camp 2011• Thanks for coming!• ITCamp is made possible by our sponsors: Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Duplex Communications with WCF and Azure Florin Cardașim, software developer RomSoft Iași, www.rms.ro caf@rms.ro | twitter.com/cardasimPremium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Session agenda• Enterprise duplex. Non-browser clients – WCF duplex bindings, router service – Windows Azure Service Bus• Web duplex. Browser clients – Simple polling, comet/long polling – WebSockets• Q&A Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Non-browser clients - WCF duplex bindings, router service - Windows Azure Service BusENTERPRISE DUPLEX Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Full duplex using WCF NetTcpBinding Event Full duplex TCP publisher Event consumer Publisher requires public IP Custom ports open in firewall Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • “Full duplex” using WCF WSDualHttpBinding Event N publisher Duplex HTTP A Event T consumer Network address translation makes connection back impossible Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • “Full duplex” using WCF WSHttpBinding Event publisher Dual HTTPEventconsumer Publisher and consumers require public IP That’s fine, BUT we want the servers INSIDE the enterprise Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • WCF Router Service Router Service Router Service Dual HTTP TCP TCP EventEvent publisherconsumer Firewall and NAT friendly Routers have protocol bridging, failover etc Not bad, but quite crowded. Can you do better? Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Windows Azure Service Bus sb://itcampnamespace.servicebus.windows.net/publisher Relay Service Event Event consumer publisher Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Connecting the enterprises via:-NetTcpBinding, WsDualHttpBinding-RouterService, NetTcpBinding, WsDualHttpBinding-Service Bus, NetEventRelayBindingDEMO Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Enterprise duplex: conclusions• Direct TCP is best IF available • public endpoint , open ports in firewall• Duplex HTTP is an alternative • public IP both publisher and consumer, port 80• Router Service bridges the enterprises • flexible, but quite complicated deployment• Azure Service Bus • very flexible & powerful; requires careful planning because each connection costs money  Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Browser clients - Simple polling, comet/long polling - WebSocketsWEB DUPLEX Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Http polling• Wasted resources, many requests return no data• Frequent polling means higher load on the server Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Comet/long polling • Bandwidth: small payload, large http headers overhead • Scalability: pressure on memory, bandwidth, threads/processes Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • An open source, WCF based, long polling server implementation:http://laharsub.codeplex.com/DEMO Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Html5 WebSockets• Full duplex, bidirectional Server• Single TCP socket• Standard ports: http/80, https/443• Bandwidth savings Client• More scalable than Comet• Nice programming model Drafts:• In&outside of browser -IETF WebSockets Protocol -W3C WebSockets API Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Html5/websockets: server• Socket.IO (Java, node.js) • Socket.IO Fallbacks – Adobe Flash Socket• Jetty (Java) – AJAX Long Polling• Ruby/EventMachine – AJAX Multipart• Python/Twisted Streaming – Forever iFrame• WCF websocket – JSONP Polling prototype • … others • http://socket.io/ Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Html5/websockets: server• Test browser support: http://websocket.org/echo.html• Microsoft is still experimenting  • http://html5labs.com Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Some WebSockets in action:http://kaazing.mehttp://retrospectiveapp.heroku.comDEMO Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Using the WCF WebSockets prototype from http://html5labs.comDEMO Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • References• channel9.msdn.com/Learn/Courses/Azure/ServiceBus• en.wikipedia.org/wiki/Comet_%28programming%29• html5rocks.com/tutorials/websockets/basics• websocket.org• pusher.com• kaazing.com• live.visitmix.com/MIX11?q=web+sockets• paulbatum.com Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Q&A Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro
    • Don’t forget!Get your free Azure pass! We want your feedback!• 30+15 days, no CC req’d • Win a WP7 smartphone – http://bit.ly/ITCAMP11 – Fill in your feedback forms – Promo code: ITCAMP11 – Raffle: end of the day Premium conference on Microsoft’s Dev and ITPro technologies @itcampro / #itcampro