SlideShare a Scribd company logo
ITCamp 2012 sponsors                                                       Architecture &
                                                                           Best Practices




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Real-time web and
         Web Sockets in Windows 8
                              Florin Cardașim, Endava,
                                    twitter/@cardasim



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Agenda                                                                        Architecture &
                                                                              Best Practices




    Real-time web           SSE, WebSockets                                   Q&A




               Comet/long polling                         WebSockets in
                                                          ASP.NET and WCF

@   itcampro   # itcamp12      Premium conference on Microsoft technologies
Real-Time Web                                                              Architecture &
                                                                           Best Practices


    •   Monitoring/dashboards
    •   Sensor/RFID Tracking
    •   Social networking, Instant messaging
    •   Collaboration tools (Google Docs)
    •   Online gaming (Quake2 in the browser??!!)
    •   …




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Implementing Real-Time Web                                                 Architecture &
                                                                           Best Practices


•   Flash/silverlight/javafx
•   Ajax polling
•   Comet/long polling/http streaming …
•   … other DoS techniques 

• Server-sent events
• Web sockets



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Polling                                                                       Architecture &
                                                                              Best Practices

    Browser                 connect                                 Server
                            no message
                            connect
                            no message
                                                                     event
                            connect
                            event
                             connect
                             no message
                            connect
                             no message                               event
                             connect
                              event


@   itcampro   # itcamp12      Premium conference on Microsoft technologies
Architecture &
Polling                                                                    Best Practices




• No real-time user experience
• Wasted bandwidth, most requests return
  no data
• Frequent polling determine high server
  loads




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Comet/Long Polling                                                           Architecture &
                                                                             Best Practices


     Browser                                                      Server
                            connect
                                                  wait
                                                                    event
                             event
                            connect
                                                  wait



                                                                     event
                             event
                            connect
                                                  wait


@   itcampro   # itcamp12     Premium conference on Microsoft technologies
Comet/Long Polling                                                         Architecture &
                                                                           Best Practices



• Real-time user experience

• High pressure on server memory, bandwidth,
  threads/processes


• DEMO



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Html5 Server-Sent Events                                                       Architecture &
                                                                               Best Practices

     Browser                                                          Server
                   open event stream
      <EventSource>

                              event                                       event
               onmessage
                                                                          event
               onmessage      event
                                                                          event
               onmessage      event




@   itcampro     # itcamp12     Premium conference on Microsoft technologies
Html5 Server-Sent Events
                                                                           Architecture &
                                                                           Best Practices


• Simulates a server push channel over HTTP
• Unidirectional, from server to browser
• Standardizes some form of Comet/HTTP
  streaming

• New html tag: <EventSource>
• New mime type: text/event-stream



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Html5 WebSocket
                                                                             Architecture &
                                                                             Best Practices

                   GET /text HTTP/1.1
Client/            Host: www.websocket.org                                     Server
Browser            Upgrade: WebSocket
                   Connection: Upgrade ...

                   HTTP/1.1 101 Switching Protocols
                   Upgrade: WebSocket
                   Connection: Upgrade ...




                        TCP comm channel
                     Full duplex, bidirectional




@   itcampro   # itcamp12     Premium conference on Microsoft technologies
Html5 WebSocket
                                                                           Architecture &
                                                                           Best Practices


•   Full duplex, bidirectional
•   Single TCP socket
•   Standard ports: http/80, https/443
•   In & outside of browser
•   Bandwidth savings, enhanced scalability




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
WebSocket vs Polling Bandwidth
                                                                            Architecture &
                                                                            Best Practices




                http://websocket.org/quantum.html

@   itcampro   # itcamp12    Premium conference on Microsoft technologies
WebSocket – The Protocol                                                        Architecture &
                                                                                Best Practices




       OpCode (4 bit)   Meaning/frame type
       0                Continuation
       1                Text (UTF-8)
       2                Binary
       3-7              Reserved for further non-control frames
       8                Connection Close
       9                Ping
       10               Pong
       11-15            Reserved for further non-control frames


@   itcampro   # itcamp12        Premium conference on Microsoft technologies
WebSocket – The Java Script API
                                                                           Architecture &
                                                                           Best Practices




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Browser Support
                                                                           Architecture &
                                                                           Best Practices




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Server Side Support                                                        Architecture &
                                                                           Best Practices



•   Socket.IO (node.js)
•   Atmosphere, Jetty (Java)
•   Ruby/EventMachine
•   Python/Twisted
•   Windows 8, IIS 8, ASP.NET-WCF 4.5
•   … others




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
WebSockets in Windows 8
                                                                                  Architecture &
                                                                                  Best Practices


                                    Your code!




                      WCF high level
                       abstractions
                                                             ASP.NET high level
          WCF WebSocket transport
                                                               abstractions

                           System.Net.WebSockets

                                                     ASP.NET HTTP Pipeline

                HttpListener                                 IIS (iiswsock.dll)

                                       http.sys



@   itcampro   # itcamp12        Premium conference on Microsoft technologies
WebSockets in Windows 8                                                    Architecture &
                                                                           Best Practices



• DEMO
    •   IE 10
    •   Windows 8, IIS 8
    •   ASP.NET 4.5
    •   WCF 4.5




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
WebSockets in ASP.NET
                                                                             Architecture &
                                                                             Best Practices



Developer “agrees” to upgrade to a WebSocket
connection
    HttpContext.Current.AcceptWebSocketRequest(
        Func<AspNetWebSocketContext,Task> myWebSocketApp,
        AspNetWebSocketOptions optionalSetupInfo
    );

Asynchronously receive and send messages
    public async Task MyWebSocketApp(AspNetWebSocketContext context)
    {
        var socket = context.WebSocket;
        …
        var input = await socket.ReceiveAsync(buffer);
        …
        await socket.SendAsync(outputBuffer,…params…);
    }


@   itcampro   # itcamp12     Premium conference on Microsoft technologies
WebSockets in WCF                                                          Architecture &
                                                                           Best Practices


• WebSocket transport for WCF
• Traditional WCF running over WebSocket
  connections




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Concerns – Network Topology                                                Architecture &
                                                                           Best Practices



• NAT, Firewall
    – NOT an issue, standard ports: http/80, https/443


• Proxy (forward, reverse, transparent etc)
    – It depends, but generally an issue
    – CONNECT (tunnel/SSL)


• Load Balancer
    – TCP (Layer-4) – no issue
    – HTTP (Layer-7) – may require explicit configuration


@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Concerns – Adoption                                                        Architecture &
                                                                           Best Practices


• Use frameworks:
  – Socket.IO
    (node.js)
  – Atmosphere
    (java)
  – SignalR
   (.net)




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
References                                                                 Architecture &
                                                                           Best Practices


•   http://www.websocket.org
•   http://www.kaazing.me
•   http://www.buildwindows.com
•   http://ww.infoq.com/websocket
•   http://socket.io




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Other WebSockets sessions @ITCamp                                          Architecture &
                                                                           Best Practices


• Building modern web sites with ASP .Net
  Web API, WebSockets and SignalR
     – 14:45
     – Alessandro Pilotti




@   itcampro   # itcamp12   Premium conference on Microsoft technologies
Q&A
     How will WebSocket impact the
     existing WEB programming?



@   itcampro   # itcamp12   Premium conference on Microsoft technologies
I’d love to hear you feedback –
       please fill the evaluation forms

                            Thank you!

                               Florin Cardașim, Endava,
                                     twitter/@cardasim

@   itcampro   # itcamp12    Premium conference on Microsoft technologies

More Related Content

PDF
Project SpaceLock - Architecture & Design
PDF
ITCamp 2012 - Martin Kulov - Using the cloud for load testing
PDF
Moving Beyond Migration: Reinventing Process in the Cloud
PDF
V fabric overview
DOC
CMG White Paper
PPTX
Webinar The App Lifecycle Platform
PPTX
Successful PaaS and CI in the Cloud - EclipseCon 2012
PPTX
Softchoice Webinar Series: VMware vSphere 5.1 Changes
Project SpaceLock - Architecture & Design
ITCamp 2012 - Martin Kulov - Using the cloud for load testing
Moving Beyond Migration: Reinventing Process in the Cloud
V fabric overview
CMG White Paper
Webinar The App Lifecycle Platform
Successful PaaS and CI in the Cloud - EclipseCon 2012
Softchoice Webinar Series: VMware vSphere 5.1 Changes

What's hot (6)

PDF
9 dani künzli citrix cloud solution 2
PPTX
ITCamp 2012 - Tudor Damian - Private Cloud with Hyper-V 3 and SCVMM 2012
PDF
Java Microservices HJUG
PDF
MS TechDays 2011 - SCVMM 2012 Building of Private Clouds and Federation to th...
PPTX
Tacademy techclinic-2012-07-11
PPTX
BayThreat Why The Cloud Changes Everything
9 dani künzli citrix cloud solution 2
ITCamp 2012 - Tudor Damian - Private Cloud with Hyper-V 3 and SCVMM 2012
Java Microservices HJUG
MS TechDays 2011 - SCVMM 2012 Building of Private Clouds and Federation to th...
Tacademy techclinic-2012-07-11
BayThreat Why The Cloud Changes Everything
Ad

Similar to ITCamp 2012 - Florin Cardasim - HTML5 web-sockets (20)

PPTX
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
PDF
Server-Side Programming Primer
PPTX
Realtime Messaging und verteilte Systeme mit SharePoint und Windows Azure Ser...
PPTX
Codecamp iasi-26 nov 2011-web sockets
PPTX
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
PPTX
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
PDF
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
PDF
ITCamp 2012 - Adam Granicz - Web development with WebSharper in F#
PDF
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
PPTX
Real time fluent communication using SignalR and Cloud (Windows Azure)
PDF
Middleware in the cloud platform-v2
PPTX
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
PPTX
Webstandards_TechEdIndia
PPTX
SignalR + Mobile Possibilities
PPT
Azure + WP7 - CodePaLOUsa
PDF
ITCamp 2012 - Ovidiu Beches - Developing SharePoint 2010 and Silverlight web ...
PPTX
Developing SharePoint 2010 and Silverlight web parts
PDF
ITCamp 2012 - Ovidiu Stan - Social media platform with Telligent Community, W...
PDF
CommTech Talks: Lightstreamer (A. Alinone)
PDF
Con5133
ItCamp2012-Real-Time-Web-Web-Sockets-Windows 8- Florin-Cardasim
Server-Side Programming Primer
Realtime Messaging und verteilte Systeme mit SharePoint und Windows Azure Ser...
Codecamp iasi-26 nov 2011-web sockets
Codecamp Iasi-26 nov 2011 - Html 5 WebSockets
Building modern web sites with ASP .Net Web API, WebSockets and RSignal
ITCamp 2012 - Alessandro Pilotti - Web API, web sockets and RSignal
ITCamp 2012 - Adam Granicz - Web development with WebSharper in F#
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Real time fluent communication using SignalR and Cloud (Windows Azure)
Middleware in the cloud platform-v2
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Webstandards_TechEdIndia
SignalR + Mobile Possibilities
Azure + WP7 - CodePaLOUsa
ITCamp 2012 - Ovidiu Beches - Developing SharePoint 2010 and Silverlight web ...
Developing SharePoint 2010 and Silverlight web parts
ITCamp 2012 - Ovidiu Stan - Social media platform with Telligent Community, W...
CommTech Talks: Lightstreamer (A. Alinone)
Con5133
Ad

More from ITCamp (20)

PDF
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
PDF
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
PDF
ITCamp 2019 - Peter Leeson - Managing Skills
PPTX
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
PDF
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
PDF
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
PPTX
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
PPTX
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
PPTX
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
PPTX
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
PPTX
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
PPTX
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
PPTX
ITCamp 2019 - Andy Cross - Business Outcomes from AI
PDF
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
PDF
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
PPTX
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
PPTX
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
PDF
ITCamp 2019 - Peter Leeson - Vitruvian Quality
PDF
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
PDF
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...
ITCamp 2019 - Stacey M. Jenkins - Protecting your company's data - By psychol...
ITCamp 2019 - Silviu Niculita - Supercharge your AI efforts with the use of A...
ITCamp 2019 - Peter Leeson - Managing Skills
ITCamp 2019 - Mihai Tataran - Governing your Cloud Resources
ITCamp 2019 - Ivana Milicic - Color - The Shadow Ruler of UX
ITCamp 2019 - Florin Coros - Implementing Clean Architecture
ITCamp 2019 - Florin Loghiade - Azure Kubernetes in Production - Field notes...
ITCamp 2019 - Florin Flestea - How 3rd Level support experience influenced m...
ITCamp 2019 - Emil Craciun - RoboRestaurant of the future powered by serverle...
ITCamp 2019 - Eldert Grootenboer - Cloud Architecture Recipes for The Enterprise
ITCamp 2019 - Cristiana Fernbach - Blockchain Legal Trends
ITCamp 2019 - Andy Cross - Machine Learning with ML.NET and Azure Data Lake
ITCamp 2019 - Andy Cross - Business Outcomes from AI
ITCamp 2019 - Andrea Saltarello - Modernise your app. The Cloud Story
ITCamp 2019 - Andrea Saltarello - Implementing bots and Alexa skills using Az...
ITCamp 2019 - Alex Mang - I'm Confused Should I Orchestrate my Containers on ...
ITCamp 2019 - Alex Mang - How Far Can Serverless Actually Go Now
ITCamp 2019 - Peter Leeson - Vitruvian Quality
ITCamp 2018 - Ciprian Sorlea - Million Dollars Hello World Application
ITCamp 2018 - Ciprian Sorlea - Enterprise Architectures with TypeScript And F...

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Univ-Connecticut-ChatGPT-Presentaion.pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
Hybrid model detection and classification of lung cancer
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPTX
A Presentation on Artificial Intelligence
PDF
1 - Historical Antecedents, Social Consideration.pdf
PPTX
A Presentation on Touch Screen Technology
PPTX
1. Introduction to Computer Programming.pptx
PDF
Heart disease approach using modified random forest and particle swarm optimi...
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
August Patch Tuesday
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
Tartificialntelligence_presentation.pptx
Programs and apps: productivity, graphics, security and other tools
Univ-Connecticut-ChatGPT-Presentaion.pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Hybrid model detection and classification of lung cancer
Enhancing emotion recognition model for a student engagement use case through...
A Presentation on Artificial Intelligence
1 - Historical Antecedents, Social Consideration.pdf
A Presentation on Touch Screen Technology
1. Introduction to Computer Programming.pptx
Heart disease approach using modified random forest and particle swarm optimi...
Hindi spoken digit analysis for native and non-native speakers
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
DP Operators-handbook-extract for the Mautical Institute
August Patch Tuesday
Building Integrated photovoltaic BIPV_UPV.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
A comparative study of natural language inference in Swahili using monolingua...
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Tartificialntelligence_presentation.pptx

ITCamp 2012 - Florin Cardasim - HTML5 web-sockets

  • 1. ITCamp 2012 sponsors Architecture & Best Practices @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 2. Real-time web and Web Sockets in Windows 8 Florin Cardașim, Endava, twitter/@cardasim @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 3. Agenda Architecture & Best Practices Real-time web SSE, WebSockets Q&A Comet/long polling WebSockets in ASP.NET and WCF @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 4. Real-Time Web Architecture & Best Practices • Monitoring/dashboards • Sensor/RFID Tracking • Social networking, Instant messaging • Collaboration tools (Google Docs) • Online gaming (Quake2 in the browser??!!) • … @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 5. Implementing Real-Time Web Architecture & Best Practices • Flash/silverlight/javafx • Ajax polling • Comet/long polling/http streaming … • … other DoS techniques  • Server-sent events • Web sockets @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 6. Polling Architecture & Best Practices Browser connect Server no message connect no message event connect event connect no message connect no message event connect event @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 7. Architecture & Polling Best Practices • No real-time user experience • Wasted bandwidth, most requests return no data • Frequent polling determine high server loads @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 8. Comet/Long Polling Architecture & Best Practices Browser Server connect wait event event connect wait event event connect wait @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 9. Comet/Long Polling Architecture & Best Practices • Real-time user experience • High pressure on server memory, bandwidth, threads/processes • DEMO @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 10. Html5 Server-Sent Events Architecture & Best Practices Browser Server open event stream <EventSource> event event onmessage event onmessage event event onmessage event @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 11. Html5 Server-Sent Events Architecture & Best Practices • Simulates a server push channel over HTTP • Unidirectional, from server to browser • Standardizes some form of Comet/HTTP streaming • New html tag: <EventSource> • New mime type: text/event-stream @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 12. Html5 WebSocket Architecture & Best Practices GET /text HTTP/1.1 Client/ Host: www.websocket.org Server Browser Upgrade: WebSocket Connection: Upgrade ... HTTP/1.1 101 Switching Protocols Upgrade: WebSocket Connection: Upgrade ... TCP comm channel Full duplex, bidirectional @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 13. Html5 WebSocket Architecture & Best Practices • Full duplex, bidirectional • Single TCP socket • Standard ports: http/80, https/443 • In & outside of browser • Bandwidth savings, enhanced scalability @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 14. WebSocket vs Polling Bandwidth Architecture & Best Practices http://websocket.org/quantum.html @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 15. WebSocket – The Protocol Architecture & Best Practices OpCode (4 bit) Meaning/frame type 0 Continuation 1 Text (UTF-8) 2 Binary 3-7 Reserved for further non-control frames 8 Connection Close 9 Ping 10 Pong 11-15 Reserved for further non-control frames @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 16. WebSocket – The Java Script API Architecture & Best Practices @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 17. Browser Support Architecture & Best Practices @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 18. Server Side Support Architecture & Best Practices • Socket.IO (node.js) • Atmosphere, Jetty (Java) • Ruby/EventMachine • Python/Twisted • Windows 8, IIS 8, ASP.NET-WCF 4.5 • … others @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 19. WebSockets in Windows 8 Architecture & Best Practices Your code! WCF high level abstractions ASP.NET high level WCF WebSocket transport abstractions System.Net.WebSockets ASP.NET HTTP Pipeline HttpListener IIS (iiswsock.dll) http.sys @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 20. WebSockets in Windows 8 Architecture & Best Practices • DEMO • IE 10 • Windows 8, IIS 8 • ASP.NET 4.5 • WCF 4.5 @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 21. WebSockets in ASP.NET Architecture & Best Practices Developer “agrees” to upgrade to a WebSocket connection HttpContext.Current.AcceptWebSocketRequest( Func<AspNetWebSocketContext,Task> myWebSocketApp, AspNetWebSocketOptions optionalSetupInfo ); Asynchronously receive and send messages public async Task MyWebSocketApp(AspNetWebSocketContext context) { var socket = context.WebSocket; … var input = await socket.ReceiveAsync(buffer); … await socket.SendAsync(outputBuffer,…params…); } @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 22. WebSockets in WCF Architecture & Best Practices • WebSocket transport for WCF • Traditional WCF running over WebSocket connections @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 23. Concerns – Network Topology Architecture & Best Practices • NAT, Firewall – NOT an issue, standard ports: http/80, https/443 • Proxy (forward, reverse, transparent etc) – It depends, but generally an issue – CONNECT (tunnel/SSL) • Load Balancer – TCP (Layer-4) – no issue – HTTP (Layer-7) – may require explicit configuration @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 24. Concerns – Adoption Architecture & Best Practices • Use frameworks: – Socket.IO (node.js) – Atmosphere (java) – SignalR (.net) @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 25. References Architecture & Best Practices • http://www.websocket.org • http://www.kaazing.me • http://www.buildwindows.com • http://ww.infoq.com/websocket • http://socket.io @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 26. Other WebSockets sessions @ITCamp Architecture & Best Practices • Building modern web sites with ASP .Net Web API, WebSockets and SignalR – 14:45 – Alessandro Pilotti @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 27. Q&A How will WebSocket impact the existing WEB programming? @ itcampro # itcamp12 Premium conference on Microsoft technologies
  • 28. I’d love to hear you feedback – please fill the evaluation forms Thank you! Florin Cardașim, Endava, twitter/@cardasim @ itcampro # itcamp12 Premium conference on Microsoft technologies