Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Best Practices in Building Websockets APIs, Elad Wertzberger, Liveperson


Published on

Best Practices in Building Websockets APIs - Elad Wertzberger, Technical Leader, Liveperson

Technical sessions reviewing protocol, authentication, browser-limitations [headers,ping/pong], proxy/nginx, testing, and dropwizard-websockets.

Presented at TADSummit 2016, 15-16 Nov, Lisbon in Stream 4, Contextual Comms, Conversational CRM, BOTs, reviews the practical impact of the changes happening to communications. Messaging and IP Communications as a Platform providers are diversifying the options for communications, and how businesses communicate with their customers. We are only at the early stages of this change, however, multi-channel communications, session management, automation (BOTs) and real-time analytics are delivering business results today. Attendees can learn from leading implementers where to focus efforts, and not get taken-in my the weak-minded marketing BS plaguing in this space.

Published in: Technology
  • Be the first to comment

Best Practices in Building Websockets APIs, Elad Wertzberger, Liveperson

  1. 1. Websockets - Best Practice at Liveperson Elad Wertzberger | Tech Lead ‫סב"ד‬
  2. 2. • Websocket Basics • Websocket Real Life experience
  3. 3. Server Push Notification Demo
  4. 4.  Bi-directional  Full-duplex communication channel  Single TCP connection
  5. 5. Browser Java Server W3C JSR356 RFC6455
  6. 6. Java Server JSR356
  7. 7. Browser W3C
  8. 8. Browser Java Server GET /chat HTTP/1.1 Host: Upgrade: websocket Connection: Upgrade Origin: Sec-Websocket-Protocol: chat Sec-Websocket-Version: 13
  9. 9. Browser Java Server HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-Websocket-Protocol: chat
  10. 10.
  11. 11. Light SideVs Dark Side (of Websockets)
  12. 12. Upgrade Error Demo
  13. 13. Our Solution: Our Solution:
  14. 14. Websocket Error After Upgrade Demo
  15. 15. Our Solution: Our Solution:
  16. 16. Our Solution: Our Solution:
  17. 17. Our Solution: .
  18. 18. • Our Solution part 1: upgrade Jmeter
  19. 19. • Our Solution:
  20. 20. Our Solution: moved to json_scheme
  21. 21. our solution: • Server map between rest requests and websocket sessions. • Server buffer all the responses from the web socket. • Client uses the REST pooling in order to get the data.
  22. 22. Github repository