~/talk

Enabling real time collaboration with RSocket

Talkat jLove 2020 · 2020-12-04..12-05· [networking, web-performance]
links:none on file
slides:none on file

Canva moves real‑time collaboration from many sockets per service to a single gateway using RSocket multiplexed channels, reducing client connections to one per user while backends use few shared connections. Implementation uses RSocket Java on Netty with Project Reactor/Flowable on the server and RSocket JS with backpressure-aware adapters on the frontend. Key operational wins are per-channel backpressure that prevents gateway collapse, a service registry for direct backend connections, and jittered exponential reconnects for smooth rollouts.

AI-written summary · about

  1. 0:00Introduction and context
  2. 1:27Real-time collaboration needs
  3. 3:13Protocols for real-time
  4. 5:00WebSocket limitations
  5. 6:03RSocket multiplexing
  6. 7:27Reactive streams with RSocket
  7. 9:52Back pressure benefits
  8. 11:55RSocket Java implementation
  9. 13:43Project Reactor benefits
  10. 14:46Frontend integration challenges
  11. 15:51Back pressure strategies
  12. 16:34Client reconnection handling
  13. 18:01Load balancing challenges
  14. 20:51Service registry solution
  15. 21:55Load balancing algorithms
  16. 22:41Gateway scaling considerations
  17. 24:05Redeployment strategies
  18. 26:16Conclusion and takeaways
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.