~/talk

How to build Reactive Server in 50 minutes

Talkat Spring I/O 2019 · 2019-05-16..05-17· [reactive-programming, networking]
slides:none on file

Shows that a plain thread‑per‑socket Java server runs out of memory when an 10,000 connections DOS tool spawns threads, then rebuilds the engine on NIO + Project Reactor. Implementation uses selectors, per‑connection reactive wrappers, a custom ByteBuffer Subscriber, and Schedulers.parallel with onBackpressureLatest to avoid publishOn queue overflow. Demo exposes an overflow bug, then a fix; the reactive version sustains thousands of concurrent TCP streams and demonstrates byte‑level backpressure working end‑to‑end.

AI-written summary · about

  1. 0:00Introduction
  2. 0:28Who this talk is for
  3. 1:19About me
  4. 1:58Discounts
  5. 2:33Reactive Server Engine
  6. 3:54Code perspective
  7. 5:19Why do we need Reactive Server
  8. 11:38Drawbacks of blocking
  9. 12:27Nonblocking IO
  10. 18:22Summary
  11. 19:25Backpressure
  12. 19:39Reactive Factory
  13. 19:49Run from Complexity
  14. 20:03Reactive Streams
  15. 20:34Project Tractor
  16. 20:54Kill Java
  17. 21:13Reactive API
  18. 27:58Register listener
  19. 28:10Read updates
  20. 29:04Listening
  21. 29:43Dont subscribe
  22. 30:39Cancel action
  23. 31:45Handle operator
  24. 32:32Datasend
  25. 33:14Garbage Collector
  26. 34:01WhoUnsubscribe
  27. 34:50Execution Flow
  28. 35:24Corner Cases
  29. 36:07Interaction
  30. 37:10Read
  31. 37:48Subscribe
  32. 41:47Debug
~/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.